Hướng dẫn how do you space a word in javascript? - làm cách nào để bạn có khoảng trắng một từ trong javascript?

Tôi có một số từ như "màu tím sáng" và "màu đỏ sẫm" được lưu trữ dưới dạng "lightpurple" và "darkred". Làm cách nào để kiểm tra các chữ cái viết hoa trong từ như "lightpurple" và đặt một khoảng trống vào giữa các từ "ánh sáng" và "tím" để tạo thành từ "màu tím sáng".

Xin được cảm ơn trước về sự giúp đỡ

Hướng dẫn how do you space a word in javascript? - làm cách nào để bạn có khoảng trắng một từ trong javascript?

Ilia g

9,9132 Huy hiệu vàng38 Huy hiệu bạc58 Huy hiệu Đồng2 gold badges38 silver badges58 bronze badges

Đã hỏi ngày 11 tháng 3 năm 2013 lúc 16:03Mar 11, 2013 at 16:03

3

Bạn có thể sử dụng Regex để thêm một khoảng trống ở bất cứ nơi nào có chữ thường bên cạnh chữ hoa.

Một cái gì đó như thế này:

"LightPurple".replace(/([a-z])([A-Z])/, '$1 $2')

Cập nhật: Nếu bạn có nhiều hơn 2 từ, thì bạn sẽ cần sử dụng cờ g, để phù hợp với tất cả.: If you have more than 2 words, then you'll need to use the g flag, to match them all.

"LightPurpleCar".replace(/([a-z])([A-Z])/g, '$1 $2')

CẬP NHẬT 2: Nếu đang cố gắng chia các từ như CSVFile, thì bạn có thể cần phải sử dụng Regex này thay thế:: If are trying to split words like CSVFile, then you might need to use this regex instead:

"CSVFilesAreCool".replace(/([a-zA-Z])([A-Z])([a-z])/g, '$1 $2$3')

Đã trả lời ngày 11 tháng 3 năm 2013 lúc 16:36Mar 11, 2013 at 16:36

gen_Ericgen_Ericgen_Eric

Phim thương hiệu vàng 218K4040 gold badges296 silver badges334 bronze badges

12

Được rồi, chia sẻ kinh nghiệm của tôi. Tôi có triển khai này trong một số ngôn ngữ khác, nó hoạt động tuyệt vời. Đối với bạn, tôi vừa tạo một phiên bản JavaScript với một ví dụ để bạn thử điều này:

var camelCase = "LightPurple";
var tmp = camelCase[0];
for (i = 1; i < camelCase.length; i++)
{
    var hasNextCap = false;
    var hasPrevCap = false;

    var charValue = camelCase.charCodeAt(i);
    if (charValue > 64 && charValue < 91)
    {
        if (camelCase.length > i + 1)
        {
            var next_charValue = camelCase.charCodeAt(i + 1);
            if (next_charValue > 64 && next_charValue < 91)
                hasNextCap = true;
        }

        if (i - 1 > -1)
        {
            var prev_charValue =  camelCase.charCodeAt(i - 1);
            if (prev_charValue > 64 && prev_charValue < 91)
                hasPrevCap = true;
        }


        if (i < camelCase.length-1 &&
            (!(hasNextCap && hasPrevCap || hasPrevCap)
            || (hasPrevCap && !hasNextCap)))
            tmp += " ";
    }
    tmp += camelCase[i];
}

Đây là bản demo.

Hướng dẫn how do you space a word in javascript? - làm cách nào để bạn có khoảng trắng một từ trong javascript?

Oscar Mederos

28.4K21 Huy hiệu vàng81 Huy hiệu bạc123 Huy hiệu đồng21 gold badges81 silver badges123 bronze badges

Đã trả lời ngày 11 tháng 3 năm 2013 lúc 16:52Mar 11, 2013 at 16:52

KMXKMXKMX

2.5911 Huy hiệu vàng22 Huy hiệu bạc27 Huy hiệu đồng1 gold badge22 silver badges27 bronze badges

Bạn có thể so sánh từng ký tự với một chuỗi các chữ cái chữ hoa.

function splitAtUpperCase(input){  
   var uppers = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";  
   //start at 1 because 0 is always uppercase
   for (var i=1; i

Đầu ra là một mảng với các từ thứ nhất và thứ hai.

Đã trả lời ngày 11 tháng 3 năm 2013 lúc 16:18Mar 11, 2013 at 16:18

Hướng dẫn how do you space a word in javascript? - làm cách nào để bạn có khoảng trắng một từ trong javascript?

Ed_Ed_Ed_

Phim huy hiệu vàng 18.4K88 gold badges43 silver badges70 bronze badges

Tôi nghĩ rằng đây chắc chắn không phải là cách tốt nhất để giải quyết vấn đề này (từ góc độ tối ưu hóa). Nhưng nó đã có tác dụng :)

const createSpacesBetweenWords = (char, index) => {
  if (char === char.toUpperCase() && index > 0) {
    return ` ${char}`;
  }

  return char;
};

function formatString(string) {
  return string
    .split('')
    .map(createSpacesBetweenWords)
    .join('');
}

formatString('LightPurple'); //returns a new string where words are separated by spaces

Đã trả lời ngày 9 tháng 3 năm 2021 lúc 16:37Mar 9, 2021 at 16:37

Làm thế nào để bạn cho một không gian trong JavaScript?

Để thêm một khoảng trống giữa các ký tự của chuỗi, hãy gọi phương thức Split () trên chuỗi để lấy một mảng ký tự và gọi phương thức tham gia () trên mảng để tham gia các chuỗi con với bộ phân cách không gian, ví dụ: str. tách ra(''). tham gia(' ') .call the split() method on the string to get an array of characters, and call the join() method on the array to join the substrings with a space separator, e.g. str. split(''). join(' ') .

Làm cách nào để thêm một khoảng trống giữa hai từ?

Thay đổi khoảng cách giữa các ký tự..
Chọn văn bản mà bạn muốn thay đổi ..
Trên tab Trang chủ, nhấp vào Trình khởi chạy hộp thoại Phông chữ, sau đó nhấp vào tab Nâng cao. ....
Trong hộp khoảng cách, nhấp vào mở rộng hoặc cô đọng, sau đó chỉ định số lượng không gian bạn muốn trong hộp BY ..

JavaScript có đếm không gian không?

Để đếm các khoảng trắng trong một chuỗi: Sử dụng phương thức Split () để phân chia chuỗi trên mỗi không gian. Xóa thuộc tính độ dài trên mảng và trừ 1. Kết quả sẽ là số lượng khoảng cách trong chuỗi.Use the split() method to split the string on each space. Access the length property on the array and subtract 1. The result will be the number of spaces in the string.

Làm thế nào để bạn có được từ đầu tiên trước một khoảng trống trong JavaScript?

Để có được từ đầu tiên của một chuỗi: gọi phương thức chia (), chuyển nó, một chuỗi chứa một khoảng trống dưới dạng tham số.Phương thức phân chia sẽ trả về một mảng chứa các từ trong chuỗi.Truy cập mảng tại chỉ mục 0 để có được từ đầu tiên của chuỗi.Call the split() method passing it a string containing an empty space as a parameter. The split method will return an array containing the words in the string. Access the array at index 0 to get the first word of the string.