source

문자열의 첫 번째 문자가 0인 경우 삭제

manycodes 2022. 11. 16. 21:28
반응형

문자열의 첫 번째 문자가 0인 경우 삭제

문자열의 첫 번째 문자가 0일 경우 삭제합니다.0은 여러 번 사용할 수 있습니다.

첫 번째 문자를 확인하고 0이면 삭제하는 간단한 기능이 있나요?

지금은 JS에서 시도하고 있습니다.slice()기능은 있지만 매우 어색합니다.

다음 명령을 사용하여 문자열의 첫 번째 문자를 삭제할 수 있습니다.

var s1 = "foobar";
var s2 = s1.substring(1);
alert(s2); // shows "oobar"

문자열 시작 부분에서 0을 모두 제거하려면:

var s = "0000test";
while(s.charAt(0) === '0')
{
 s = s.substring(1);
}

읽기 쉬운 코드는 두 번째 문자 (1)의 인덱스로 설정된 시작과 함께 사용합니다(첫 번째 문자는 인덱스 0을 가집니다).의 두 번째 파라미터.substring()방법은 실제로 선택 사항이기 때문에 전화할 필요도 없습니다..length()...

TL;DR : 문자열에서 첫 번째 문자를 제거합니다.

str = str.substring(1);

그래, 그렇게 간단해...

일부 특정 문자 삭제:

@Shaded의 제안대로 문자열의 첫 번째 문자가 "원하지 않는" 문자일 때 이것을 루프합니다.

var yourString = "0000test";
var unwantedCharacter = "0";
//there is really no need for === check, since we use String's charAt()
while( yourString.charAt(0) == unwantedCharacter ) yourString = yourString.substring(1);
//yourString now contains "test"

.slice().substring()vs .substr()

편집: subst()는 표준화되어 있지 않으며 새로운 JS 코드에 사용해서는 안 됩니다.예를 들어 PHP와 같은 다른 언어와의 이름이 비슷하기 때문에 사용하는 경향이 있을 수 있습니다.그러나 PHP에서도 현대 세계에서 안전하기 위해 사용해야 합니다.

string의 차이점 (및 기타 내용)에서 인용합니다.슬라이스와 String.substring?

또한 슬라이스할 모수가 음수인 경우 끝에서부터 문자열을 참조한다는 점도 지적합니다.서브스트링과 기판은 그렇지 않다.

및 을 사용합니다.

예: http://jsfiddle.net/kCpNQ/

var myString = "0String";

if( myString.charAt( 0 ) === '0' )
    myString = myString.slice( 1 );

여러 개 있을 수 있다면0첫 번째 문자를 변경할 수 있습니다.if()에 대해서while().

예: http://jsfiddle.net/kCpNQ/1/

var myString = "0000String";

while( myString.charAt( 0 ) === '0' )
    myString = myString.slice( 1 );

리드선을 모두 제거하는 가장 쉬운 방법0s:

var s = "00test";
s = s.replace(/^0+/, "");

리드선 하나만 떼어내면0질문에서 알 수 있듯이, 당신은 사용할 수 있습니다.

s = s.replace(/^0/, "");

서브스트링 메서드를 사용하여 실행할 수 있습니다.

let a = "My test string";

a = a.substring(1);

console.log(a); // y test string

너 그거 먹어봤어?substring기능하고 있습니까?

string = string.indexOf(0) == '0' ? string.substring(1) : string;

여기 레퍼런스가 있습니다.https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/substring

또한 여러 0에 대해 항상 이 작업을 수행할 수 있습니다.

while(string.indexOf(0) == '0')
{
    string = string.substring(1);
}

한 가지 간단한 해결책은 Javascript를 사용하는 것입니다.slice()method 및 pass 1을 파라미터로 지정합니다.

let str = "khattak01"
let resStr = str.slice(1)
console.log(resStr)

결과 : hattak01

var s = "0test";
if(s.substr(0,1) == "0") {
    s = s.substr(1);
}

모두를 위해0s: http://jsfiddle.net/An4MY/

String.prototype.ltrim0 = function() {
 return this.replace(/^[0]+/,"");
}
var s = "0000test".ltrim0();
const string = '0My string';
const result = string.substring(1);
console.log(result);

substring() javascript 함수를 사용할 수 있습니다.

//---- remove first and last char of str    
str = str.substring(1,((keyw.length)-1));

//---- remove only first char    
str = str.substring(1,(keyw.length));

//---- remove only last char    
str = str.substring(0,(keyw.length));

해라

s.replace(/^0/,'')

console.log("0string  =>", "0string".replace(/^0/,'') );
console.log("00string =>", "00string".replace(/^0/,'') );
console.log("string00 =>", "string00".replace(/^0/,'') );

이 안 요.string를 사용합니다.substring에는 몇 가지 유닛테스트가 준비되어 있습니다.

var cutOutZero = function(value) {
    if (value.length && value.length > 0 && value[0] === '0') {
        return value.substring(1);
    }

    return value;
};

http://jsfiddle.net/TRU66/1/

String.prototype.trimStartWhile = function(predicate) {
    if (typeof predicate !== "function") {
    	return this;
    }
    let len = this.length;
    if (len === 0) {
        return this;
    }
    let s = this, i = 0;
    while (i < len && predicate(s[i])) {
    	i++;
    }
    return s.substr(i)
}

let str = "0000000000ABC",
    r = str.trimStartWhile(c => c === '0');
    
console.log(r);

var test = '0test';
test = test.replace(/0(.*)/, '$1');

문자열에서 공백과 선두 또는 말미 공간을 삭제하는 trim() >의 Javascript 구현에서.다음은 이 질문에 대한 답변의 변경된 구현입니다.

var str = "0000one two three0000"; //TEST  
str = str.replace(/^\s+|\s+$/g,'0'); //ANSWER

JS에서의 최초 구현

string.trim():
if (!String.prototype.trim) {
 String.prototype.trim = function() {
  return this.replace(/^\s+|\s+$/g,'');
 }
}

삭제 후 첫 번째 문자를 가져오는 다른 방법:

// Example string
let string = 'Example';

// Getting the first character and updtated string
[character, string] = [string[0], string.substr(1)];

console.log(character);
// 'E'

console.log(string);
// 'xample'

언급URL : https://stackoverflow.com/questions/4564414/delete-first-character-of-string-if-it-is-0

반응형