대문자 앞에 공백 삽입
나는 문자열이 "MySites"
있습니다. My
와 사이에 공백을두고 싶습니다 Sites
.
jQuery 또는 JavaScript에서 어떻게 할 수 있습니까?
모든 대문자 앞에 공백을 추가하고 선행 및 후행 공백을 제거 할 수 있습니다.
s = s.replace(/([A-Z])/g, ' $1').trim()
그러면 소문자와 대문자가 나오는 각 항목을 찾아 그 사이에 공백을 삽입합니다.
s = s.replace(/([a-z])([A-Z])/g, '$1 $2');
2 개의 연속 된 대문자가 발생하는 특수한 경우 (예 : ThisIsATest) 아래에 추가 코드를 추가하십시오.
s = s.replace(/([A-Z])([A-Z])/g, '$1 $2');
현재 허용되는 답변에 약간의 수정을 제안 할 수 있습니까?
function insertSpaces(string) {
string = string.replace(/([a-z])([A-Z])/g, '$1 $2');
string = string.replace(/([A-Z])([A-Z][a-z])/g, '$1 $2')
return string;
}
이는 다음을 의미합니다.
ACROText -> ACRO Text
UserNameTest -> User Name Test
db 열 이름을 다루는 경우 약간 더 유용 할 수 있습니다 (그리고 일부에 대해 약어를 사용하는 경우)
대문자로 시작하지 않은 각 대문자 사이에 공백을 삽입해야합니다.
var myString = "MySites"
var newString = "";
var wasUpper = false;
for (var i = 0; i < myString.length; i++)
{
if (!wasUpper && myString[i] == myString.toUpperCase()[i])
{
newString = newString + " ";
wasUpper = true;
}
else
{
wasUpper = false;
}
newString = newString + myString[i];
}
newString
당신이 원하는 가치를 가질 것입니다. 또한 regex를 사용하여 코드를 단축하려면 Javascript camelCase에서 Regular Form으로 다음 코드를 사용할 수 있습니다.
"thisStringIsGood"
// insert a space before all caps
.replace(/([A-Z])/g, ' $1')
// uppercase the first character
.replace(/^./, function(str){ return str.toUpperCase(); })
소문자를 찾는 정규식-대문자 경계 다음 공백 삽입
<div id='x'>ThisIsMySites</div>
$('#x').text( $('#x').text().replace(/([a-z])([A-Z])/g, "$1 $2") );
String#split()
대문자 알파벳 ( [A-Z]
)과 Array#join()
공백이있는 배열에 대해 및 미리보기를 사용할 수 있습니다 .
let stringCamelCase = "MySites";
let string = stringCamelCase.split(/(?=[A-Z])/).join(" ");
console.log(string)
또는 문자열 개체 함수로 :
String.prototype.cC2SC = function() {
return this.split(/(?=[A-Z])/).join(" ");
}
console.log("MyCamelCase".cC2SC());
단일 정규식에서 (트림 또는 조인없이) 문자 [a-z]
또는 [A-Z]
.
const str = "MySites";
str.replace(/(?<!^)([A-Z])/, " $1"); // -> "My Sites"
(?<!^)
여기에서 뒤의 모습에 대해 자세히 확인할 수 있습니다 .
참고 URL : https://stackoverflow.com/questions/5582228/insert-space-before-capital-letters
'program tip' 카테고리의 다른 글
Android : 프로그래밍 방식으로 옵션 메뉴 항목 변경 (0) | 2020.09.20 |
---|---|
동일한 옵저버 블 구독에서 옵저버 블의 이전 값 가져 오기 (0) | 2020.09.20 |
매월 말일에 실행할 크론 작업 (0) | 2020.09.20 |
ASP.NET의 모든 브라우저에 대해 브라우저 캐싱 비활성화 (0) | 2020.09.19 |
쿼리 문자열에 대한 변수 선언 (0) | 2020.09.19 |