Javascript는 줄의 끝을 표시하는 데 사용됩니다. 문자열 작업을 위한 JavaScript 메서드. 문자열은 항상 배열이다




문자열 처리를 위한 함수 및 구성의 사용을 위한 의미론적 "프레임워크"로서 의미론적 내용에 따라 정보 처리 프로세스를 프로그래밍하는 데 특히 관심이 있습니다. JavaScript에서는 문자열 작업을 위한 함수를 고유한 의미 구조로 결합하여 코드를 단순화하고 작업 주제 영역을 형식화할 수 있습니다.

클래식 버전에서 정보 처리는 우선 문자열 기능입니다. 언어의 각 기능과 구성은 JavaScript의 구문과 의미에 있어 고유한 특성을 가지고 있습니다. 여기에서 문자열을 사용하는 방법에는 고유한 스타일이 있지만 일반적으로 검색, 바꾸기, 삽입, 추출, 내포, 대소문자 변경 등 단순한 의미 내의 구문일 뿐입니다.

문자열 변수 설명

문자열을 선언하려면 다음 구문을 사용하세요. var.해당 값을 즉시 설정하거나 알고리즘 실행 중에 생성할 수 있습니다. 문자열에 작은따옴표나 큰따옴표를 사용할 수 있습니다. 따옴표를 포함해야 하는 경우 "\" 문자로 이스케이프해야 합니다.

표시된 줄에서는 내부 큰따옴표를 이스케이프해야 합니다. 마찬가지로, 작은따옴표로 표시된 항목은 내부에 작은따옴표가 있는지 확인하는 데 매우 중요합니다.

이 예에서 문자열 "str_dbl"은 문자열에 사용할 수 있는 유용한 특수 문자를 나열합니다. 이 경우 "\" 문자 자체가 이스케이프됩니다.

문자열은 항상 배열이다

JavaScript는 다양한 방식으로 문자열을 사용할 수 있습니다. 언어 구문은 다양한 옵션을 제공합니다. 우선, (설명의 맥락에서) 다음을 잊지 말아야 합니다.

  • str_isV => "V";
  • str_chr => """;
  • str_dbl => "a".

즉, 문자열의 문자는 배열 요소로 사용할 수 있으며 각 특수 문자는 하나의 문자입니다. 이스케이프는 구문의 요소입니다. 실제 라인에는 "화면"이 배치되지 않습니다.

charAt() 함수를 사용하면 비슷한 효과가 있습니다.

  • str_isV.charAt(3) => "V";
  • str_chr.charAt(1) => """;
  • str_dbl.charAt(5) => "a".

프로그래머는 모든 옵션을 사용할 수 있습니다.

기본 문자열 함수

JavaScript에서는 다른 언어와 약간 다르게 수행됩니다. 변수 이름(또는 문자열 자체) 뒤에는 점으로 구분된 함수 이름이 옵니다. 일반적으로 문자열 함수는 언어 구문 스타일에서 메서드라고 부르지만 첫 번째 단어가 더 익숙합니다.

문자열(보다 정확하게는 속성)의 가장 중요한 방법은 길이입니다.

  • var xStr = str_isV.length + "/" + str_chr.length + "/" + str_dbl.length.

결과: 위 설명에 따르면 175년 11월 12일.

문자열 함수의 가장 중요한 쌍은 문자열을 요소 배열로 분할하고 배열을 문자열로 병합하는 것입니다.

  • 분할(s [, l]);
  • 가입하세요.

첫 번째 경우 문자열은 구분 문자 "s"에서 요소 수가 "l" 값을 초과하지 않는 요소 배열로 분할됩니다. 수량을 지정하지 않으면 전체 줄이 끊어집니다.

두 번째 경우에는 요소 배열이 지정된 구분 기호를 통해 한 줄로 병합됩니다.

이 쌍의 주목할만한 특징은 하나의 구분 기호를 사용하여 분할을 수행할 수 있고 다른 구분 기호를 사용하여 병합을 수행할 수 있다는 것입니다. 이러한 맥락에서 JavaScript는 언어 구문 "외부" 문자열로 작업할 수 있습니다.

클래식 문자열 함수

일반적인 문자열 처리 기능:

  • 찾다;
  • 견본;
  • 대사;
  • 변환.

indexOf(), lastIndexOf(), toLowerCase(), toUpperCase(), concan(), charCodeAt() 등의 메서드로 표현됩니다.

JavaScript에서 문자열 작업은 다양한 함수로 표현되지만 서로 중복되거나 오래된 알고리즘과 호환성을 위해 남아 있습니다.

예를 들어, concat() 메서드를 사용하는 것은 허용되지만 다음과 같이 작성하는 것이 더 쉽습니다.

  • str = str1 + str2 + str3;

charAt() 함수를 사용하는 것도 의미가 있지만 charCodeAt()를 사용하는 것은 실제적인 의미가 있습니다. 마찬가지로, JavaScript의 경우 줄바꿈은 특별한 의미를 갖습니다. 예를 들어, 경고() 메시지를 표시하는 맥락에서는 "\n"이고, 페이지 콘텐츠 생성 구성에서는 "입니다.
" 첫 번째 경우에는 단순한 문자이고 두 번째 경우에는 문자열입니다.

문자열 및 정규식

JavaScript에서는 문자열 작업에 정규식 메커니즘이 포함됩니다. 이를 통해 서버에 접속하지 않고도 브라우저 내에서 복잡한 검색, 가져오기 및 문자열 변환을 수행할 수 있습니다.

방법 성냥발견하고, 바꾸다찾은 일치 항목을 원하는 값으로 바꿉니다. 정규식은 높은 수준의 JavaScript로 구현되고 본질적으로 복잡하며 애플리케이션의 특성으로 인해 무게 중심을 서버에서 클라이언트 브라우저로 전달합니다.

메소드를 적용할 때 일치, 검색그리고 바꾸다초기 매개변수와 검색 문자열의 허용 가능한 전체 값 범위에 대한 테스트에 주의를 기울여야 할 뿐만 아니라 브라우저의 부하도 평가해야 합니다.

정규식 예

문자열 처리를 위한 정규식의 범위는 광범위하지만 개발자의 세심한 주의가 필요합니다. 우선, 양식 필드에서 사용자 입력을 테스트할 때 정규 표현식이 사용됩니다.

다음은 입력에 정수(schInt) 또는 실수(schReal)가 포함되어 있는지 확인하는 함수입니다. 다음 예에서는 유효한 문자만 확인하여 문자열을 처리하는 것이 얼마나 효율적인지 보여줍니다. schText - 텍스트만, schMail - 유효한 이메일 주소.

JavaScript에서 문자와 문자열은 특히 키릴 문자로 작업해야 하는 경우 로케일에 더 많은 주의를 기울여야 한다는 점을 명심하는 것이 매우 중요합니다. 대부분의 경우 의미보다는 실제 문자 코드를 지정하는 것이 좋습니다. 이것은 주로 러시아 문자에 적용됩니다.

특히, 설정된 대로 작업을 완료하는 것이 항상 필요한 것은 아니라는 점에 유의해야 합니다. 특히 정수와 실수를 확인하는 경우에는 고전적인 문자열 방법이 아닌 일반적인 구문 구성을 사용하여 얻을 수 있습니다.

객체 지향 문자열

JavaScript에서 문자열 작업은 다양한 함수로 표현됩니다. 그러나 이것이 원래 형태로 사용하는 것이 좋은 이유는 아닙니다. 함수의 구문과 품질은 완벽하지만 모든 경우에 적용되는 단일 솔루션입니다.

문자열 함수를 사용하려면 데이터, 적용 범위, 알고리즘의 특정 목적에 따라 결정되는 실제 의미를 처리해야 합니다.

이상적인 솔루션은 항상 데이터의 의미를 해석하는 것입니다.

각 매개변수를 개체로 표현함으로써 해당 매개변수와 함께 작동하는 함수를 공식화할 수 있습니다. 우리는 항상 기호 처리에 대해 이야기하고 있습니다. 숫자나 문자열은 특정 방식으로 구성된 기호 시퀀스입니다.

일반 알고리즘이 있고 비공개 알고리즘이 있습니다. 예를 들어 성이나 집 번호는 문자열이지만 첫 번째 경우에는 러시아어 문자만 허용되고 두 번째 경우에는 숫자가 허용되며 하이픈이나 슬래시로 구분된 색인이 있을 수 있습니다. 인덱스는 알파벳 또는 숫자일 수 있습니다. 집에는 건물이 있을 수 있습니다.

모든 상황을 예측하는 것이 항상 가능한 것은 아닙니다. 이는 프로그래밍에서 중요한 포인트입니다. 알고리즘에 수정이 필요하지 않은 경우는 드물며, 대부분의 경우 기능을 체계적으로 조정해야 합니다.

처리된 라인정보를 객체 형태로 형식화하면 코드의 가독성이 향상되고 의미처리 수준까지 올라갈 수 있다. 이는 개발된 알고리즘의 신뢰성이 높아짐에 따라 기능 수준이 다르고 코드 품질이 훨씬 향상되었습니다.

프로토타입 지향 언어를 배우기로 철저하게 결정한 모든 분들께 인사드립니다. 지난번에 에 대해 말씀드렸는데, 오늘은 JavaScript 문자열을 구문 분석해 보겠습니다. 이 언어에서는 모든 텍스트 요소가 문자열이므로(문자에 대한 별도의 형식은 없음) js 구문 학습에 있어 이 섹션이 중요한 부분을 차지한다고 짐작할 수 있습니다.

그렇기 때문에 이 출판물에서는 문자열 요소가 생성되는 방법, 해당 요소에 제공되는 메서드와 속성, 문자열을 올바르게 변환하는 방법(예: 숫자로 변환), 원하는 하위 문자열을 추출하는 방법 등을 설명합니다. 이 외에도 프로그램 코드의 예시를 첨부하겠습니다. 이제 사업을 시작합시다!

문자열 변수 구문

js 언어에서는 모든 변수를 var 키워드로 선언하고, 매개변수의 형식에 따라 선언된 변수의 타입이 결정됩니다. JavaScript에서 기억하는 것처럼 강력한 타이핑이 없습니다. 이것이 바로 코드에 이런 상황이 존재하는 이유입니다.

변수를 초기화할 때 값은 이중, 단일 및 2015년부터 기울어진 작은따옴표로 구성될 수 있습니다. 아래에는 문자열을 선언하는 각 방법의 예가 첨부되어 있습니다.

저는 세 번째 방법에 특히 주목하고 싶습니다. 여러 가지 장점이 있습니다.

도움을 받으면 줄 바꿈을 쉽게 수행할 수 있으며 다음과 같이 표시됩니다.

경고(`여러

이전 중이에요

세 번째 방법을 사용하면 $(…) 구성을 사용할 수 있습니다. 보간을 삽입하려면 이 도구가 필요합니다. 놀라지 마십시오. 이제 그것이 무엇인지 알려 드리겠습니다.

$(…) 덕분에 변수 값을 문자열에 삽입할 수 있을 뿐만 아니라 이를 사용하여 산술 및 논리 연산, 호출 메서드, 함수 등을 수행할 수도 있습니다. 이 모든 것을 하나의 용어, 즉 보간이라고 합니다. 이 접근 방식의 구현 예를 확인하세요.

1 2 3 var 펜 = 3; var 연필 = 1; Alert(`$(펜) + $(연필*5) = $(펜 + 연필)`);

var 펜 = 3; var 연필 = 1; Alert(`$(펜) + $(연필*5) = $(펜 + 연필)`);

결과적으로 "3 + 1*5 = 8"이라는 표현이 화면에 표시됩니다.

문자열을 선언하는 처음 두 가지 방법에는 차이가 없습니다.

특수 문자에 대해 조금 이야기 해 봅시다

많은 프로그래밍 언어에는 문자열의 텍스트를 조작하는 데 도움이 되는 특수 문자가 있습니다. 그 중 가장 유명한 것이 줄바꿈이다. (\N).

모든 유사한 도구는 처음에 백슬래시(\)로 시작하고 그 뒤에 영어 알파벳 문자가 옵니다.

아래에는 일부 특수 문자가 나열된 작은 표가 첨부되어 있습니다.

우리는 엄청난 양의 방법과 속성을 보유하고 있습니다.

언어 개발자는 문자열 작업을 단순화하고 최적화하기 위해 다양한 메서드와 속성을 제공했습니다. 그리고 작년에 ES-2015라는 새로운 표준이 출시되면서 이 목록에는 새로운 도구가 추가되었습니다.

길이

문자열 변수 값의 길이를 알아내는 데 도움이 되는 가장 인기 있는 속성부터 시작하겠습니다. 이것 길이. 다음과 같은 방식으로 사용됩니다.

var string = "유니콘";

경고(문자열.길이);

답에는 숫자 9가 표시됩니다. 이 속성은 값 자체에도 적용될 수 있습니다.

"유니콘".length;

결과는 변하지 않습니다.

문자()

이 방법을 사용하면 텍스트에서 특정 문자를 추출할 수 있습니다. 번호 매기기는 0부터 시작하므로 문자열에서 첫 번째 문자를 추출하려면 다음 명령을 작성해야 합니다.

var string = "유니콘";

경고(string.charAt(0));.

그러나 결과 결과는 문자 유형이 아니며 여전히 단일 문자 문자열로 간주됩니다.

toLowerCase()에서 UpperCase()로

이러한 메서드는 문자의 대소문자를 제어합니다. 코드 "Content"를 작성할 때.

to대문자()전체 단어가 대문자로 표시됩니다.

반대 효과를 얻으려면 “Content”를 사용해야 합니다. toLowerCase().

인덱스()

하위 문자열을 검색하는 데 널리 사용되는 필수 도구입니다. 인수로 찾고자 하는 단어나 문구를 입력해야 하며, 메소드는 찾은 요소의 위치를 ​​반환합니다. 검색된 텍스트가 없으면 "-1"이 사용자에게 반환됩니다.

1 2 3 4 var text = "꽃 검색을 구성하세요!"; Alert(text.indexOf("색상")); //19 경고(text.indexOf(" ")); //12 경고(text.lastIndexOf(" ")); //18

var text = "꽃 검색을 구성하세요!"; Alert(text.indexOf("색상")); //19 경고(text.indexOf(" ")); //12 경고(text.lastIndexOf(" ")); //18

lastIndexOf()는 동일한 작업을 수행하지만 문장 끝에서만 검색합니다.

부분 문자열 추출

이 작업을 위해 js에서 거의 동일한 세 가지 메서드가 생성되었습니다.

먼저 살펴보자 하위 문자열(시작, 끝)그리고 슬라이스(시작, 끝). 그들은 동일하게 작동합니다. 첫 번째 인수는 추출이 시작되는 시작 위치를 정의하고 두 번째 인수는 최종 중지 지점을 담당합니다. 두 방법 모두 끝 위치에 있는 문자를 포함하지 않고 문자열을 추출합니다.

var text = "분위기"; 경고(text.substring(4)); // "구체"가 표시됩니다. Alert(text.substring(2, 5)); //"mos" 표시 경고(text.slice(2, 5)); //"모스" 표시

이제 세 번째 방법을 살펴보겠습니다. 하위 문자열(). 또한 2개의 인수를 포함해야 합니다. 시작그리고 길이.

첫 번째는 시작 위치를 지정하고 두 번째는 추출할 문자 수를 지정합니다. 이 세 가지 도구의 차이점을 추적하기 위해 이전 예를 사용했습니다.

var text = "분위기";

경고(text.substr(2, 5)); //"mosfe" 표시

나열된 하위 문자열 가져오기 방법을 사용하면 프로그램이 작동하는 새 줄 요소에서 불필요한 문자를 제거할 수 있습니다.

회신하다()

이 방법은 텍스트의 문자와 하위 문자열을 바꾸는 데 도움이 됩니다. 전역 대체를 구현하는 데에도 사용할 수 있지만 이를 위해서는 정규식을 포함해야 합니다.

이 예에서는 첫 번째 단어의 하위 문자열만 바꿉니다.

var text = "대기 분위기"; var newText = text.replace("Atmo","Strato") Alert(newText) // 결과: 성층권 대기

그리고 이 소프트웨어 구현에서는 정규식 플래그 "g"로 인해 전역 교체가 수행됩니다.

var text = "대기 분위기"; var newText = text.replace(/Atmo/g,"Strato") Alert(newText) // 결과: 성층권 성층권

변환을 해보자

JavaScript는 세 가지 유형의 객체 유형 변환만 제공합니다.

  1. 숫자;
  2. 끈;
  3. 부울.

이번 간행물에서는 그 중 2가지에 대해 이야기하겠습니다. 왜냐하면 문자열 작업에는 이에 대한 지식이 더 필요하기 때문입니다.

숫자 변환

요소의 값을 숫자 형식으로 명시적으로 변환하려면 다음을 사용할 수 있습니다. 숫자(값).

더 짧은 표현도 있습니다: +"999".

var a = 숫자("999");

문자열 변환

함수에 의해 실행됨 알리다, 명시적인 호출뿐만 아니라 문자열(텍스트).

자바스크립트로 글을 작성할 때 문자열과 함께 작동하는 메서드의 구문(및 인수의 순서, 정의)을 명확히 하기 위해 검색 엔진을 찾아야 하는 경우가 많습니다.

이 기사에서는 문자열과 관련된 가장 일반적인 자바스크립트 메소드에 대한 예와 설명을 제공하려고 합니다. 가장 널리 사용되는 방법은 편의상 기사 상단에 나와 있습니다.

문자열로 변환

숫자, 부울 또는 객체를 문자열로 변환할 수 있습니다.

Var myNumber = 24; // 24 var myString = myNumber.toString(); // "24"

string() 함수를 사용하여 유사한 조작을 수행할 수도 있습니다.

Var myNumber = 24; // 24 var myString = String(myNumber); // "24"

Nicholas Zakas는 "값(null 또는 정의되지 않음)이 확실하지 않은 경우 변수 유형에 관계없이 문자열을 반환하므로 String() 함수를 사용하십시오."라고 말합니다.

한정되지 않은변수에 어떤 값도 할당되지 않았음을 의미합니다. 없는, - 빈 값이 할당됩니다(null은 빈 객체로 정의된다고 말할 수 있습니다).

문자열을 하위 문자열로 분할

문자열을 하위 문자열 배열로 분할하려면 Split() 메서드를 사용할 수 있습니다.

Var myString = "coming,part,at,the,commas"; var substringArray = myString.split(","); // ["coming", "apart", "at", "the", "commas"] var arrayLimited = myString.split(",", 3); // ["오고", "떨어져", "에서"]

마지막 줄에서 알 수 있듯이 두 번째 선택적 인수의 값은 반환된 배열의 요소 수를 결정합니다.

문자열 길이 얻기

length 속성을 사용하면 문자열의 유니코드 문자 수를 찾을 수 있습니다.

Var myString = "당신은 정말 대단한 인물입니다."; var stringLength = myString.length; // 25

문자열의 하위 문자열 정의

계획을 달성하는 방법에는 두 가지가 있습니다.

indexOf() 사용:

Var stringOne = "조니 왈도 해리슨 왈도"; var wheresWaldo = stringOne.indexOf("왈도"); // 7

indexOf() 메서드는 문자열(문자열의 시작 부분부터)에서 부분 문자열(전달된 첫 번째 인수)을 검색하고 문자열에서 부분 문자열이 나타나기 시작한 첫 번째 문자의 위치를 ​​반환합니다.

lastIndexOf() 사용:

Var stringOne = "조니 왈도 해리슨 왈도"; var wheresWaldo = stringOne.lastIndexOf("왈도"); // 22

lastIndexOf() 메서드는 문자열에서 나타나는 마지막 부분 문자열을 찾는다는 점을 제외하면 모든 작업을 동일하게 수행합니다.

하위 문자열을 찾을 수 없으면 두 메서드 모두 -1을 반환합니다. 두 번째 선택적 인수는 검색을 시작하려는 문자열의 위치를 ​​지정합니다. 따라서 indexOf() 메서드의 두 번째 인수가 5이면 검색은 5번째 문자부터 시작되고 문자 0-4는 무시됩니다. lastIndexOf() 의 경우 두 번째 인수가 5인 경우에도 검색은 반대 방향으로 시작되며 6번째 이상의 문자는 무시됩니다.

문자열의 일부를 바꾸는 방법

문자열의 일부(또는 전체)를 바꾸려면 replacement() 메서드를 사용합니다.

Var 슬러거 = "조쉬 해밀턴"; var betterSlugger = slugger.replace("h 해밀턴", "e 바티스타"); console.log(betterSlugger); // "호세 바티스타"

첫 번째 인수에는 대체될 하위 문자열 부분이 포함됩니다. 두 번째 인수는 대체되는 하위 문자열을 대신할 문자열입니다. 하위 문자열의 첫 번째 인스턴스만 대체됩니다.

하위 문자열의 모든 항목을 바꾸려면 "g" 플래그와 함께 정규식을 사용하십시오.

Var myString = "그녀는 자동차 해안에서 자동차 쉘을 판매합니다"; var newString = myString.replace(/automotive/g, "sea"); console.log(newString); // "그녀는 바닷가에서 조개껍질을 팔고 있습니다"

두 번째 인수에는 대체할 하위 문자열이나 함수가 포함될 수 있습니다.

주어진 위치에서 문자 찾기

특정 위치에 어떤 문자가 있는지 확인하려면 charAt() 메서드를 사용할 수 있습니다.

Var myString = "깃털의 새"; var whatsAtSeven = myString.charAt(7); // "에프"

자바스크립트에서 흔히 그렇듯, 첫 번째 위치는 1이 아닌 0부터 시작합니다.

또는 charCodeAt() 메서드를 사용할 수 있지만 문자 자체 대신 해당 코드를 받게 됩니다.

Var myString = "깃털의 새"; var whatsAtSeven = myString.charCodeAt(7); // "102" var whatsAtEleven = myString.charCodeAt(11); // "70"

대문자(위치 11)에 대한 코드는 동일한 소문자(위치 7)에 대한 코드와 다릅니다.

자바스크립트의 문자열 연결

대부분의 경우 (+) 연산자를 사용하여 문자열을 연결합니다. 그러나 concat() 메서드를 사용하여 문자열을 연결할 수도 있습니다.

Var stringOne = "Knibb High 축구"; var stringTwo = stringOne.concat("rules."); // "Knibb High 축구 규칙"

여러 문자열이 concat()에 전달될 수 있으며 결과 문자열은 concat() 메서드에 추가된 순서대로 표시됩니다.

Var stringOne = "손잡이"; var stringTwo = "높음"; var stringThree = "축구"; var stringFour = "규칙."; var finalString = stringOne.concat(stringTwo, stringThree, stringFour); console.log(최종문자열); // "Knibb 하이 축구 규칙."

문자열의 일부(자바스크립트에서 하위 문자열 추출)

기존 문자열에서 하위 문자열의 일부를 "당겨" 새 문자열을 만드는 세 가지 방법이 있습니다.

슬라이스() 사용:

Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.slice(5, 10); // "fghij"

부분문자열() 사용:

Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.substring(5, 10); // "fghij"

(slice() 및 substring()) 메서드 모두에서 첫 번째 인수는 하위 문자열이 시작되는 문자의 위치(0부터 계산)이고, 두 번째 인수는 하위 문자열이 끝나는 문자의 위치이며, 두 번째 인수에 지정된 문자는 반환된 하위 문자열에 포함되지 않습니다.

substr() 사용:

Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.substr(5, 10); // "fghijklmno"

substr 메소드의 경우 첫 번째 인수는 하위 문자열이 시작되는 문자의 위치도 지정합니다. 두 번째 인수는 선택 사항입니다. 그러나 동시에 두 번째 인수는 첫 번째 인수에서 이미 정의한 위치부터 시작하여 하위 문자열에 포함되어야 하는 문자 수를 지정합니다. 이 기술은 위의 예에 잘 설명되어 있습니다.

자바스크립트에서 문자열을 소문자 또는 대문자로 변환

필요한 변환을 수행하는 방법에는 네 가지가 있습니다. 두 개는 문자열 문자를 대문자로 변환합니다.

Var stringOne = "말해 보세요. 들리지 않습니다."; var stringTwo = stringOne.toLocaleUpperCase(); // "말해 보세요. 들리지 않습니다." var stringThree = stringOne.toUpperCase(); // "말해 보세요. 들리지 않습니다."

그리고 문자열을 소문자로 변환하는 두 가지:

Var stringOne = "소리를 지르지 마세요"; var stringTwo = stringOne.toLocaleLowerCase(); // "소리를 지르지 않아도 됩니다." var stringThree = stringOne.toLowerCase(); // "소리지르지 않아도 돼요"

일반적으로 로케일 방법과 비로케일 방법 사이에는 차이가 없습니다. 그러나 "터키어와 같이 문자 대소문자가 확립된 유니코드 대소문자를 따르지 않는 일부 언어의 경우 비로케일 방법을 사용하면 결과가 달라질 수 있습니다. 달라져라." 따라서 다음 규칙을 따르십시오. "코드가 실행될 언어를 모르는 경우 로캘 메서드를 사용하는 것이 더 안전합니다."

자바스크립트의 패턴 매칭

두 가지 방법을 사용하여 문자열에 패턴이 있는지 확인할 수 있습니다.

match() 메서드는 문자열 객체에서 호출되어 정규식을 match() 메서드에 대한 인수로 전달합니다.

Var myString = "나무 척으로 던질 수 있는 나무의 양"; var myPattern = /.ood/; var myResult = myString.match(myPattern); // ["나무"] varpatternLocation = myResult.index; // 9 var originalString = myResult.input // "나무척으로 던질 수 있는 나무의 양"

그리고 RegExp 객체에서 exec() 메서드가 호출되어 문자열을 인수로 전달합니다.

Var myString = "나무 척으로 던질 수 있는 나무의 양"; var myPattern = /.huck/; var myResult = myPattern.exec(myString); // ["척"] var PatternLocation = myResult.index; // 27 var originalString = myResult.input // "나무척으로 던질 수 있는 나무의 양"

두 메서드 모두 일치하는 첫 번째 항목을 반환합니다. 일치하는 항목이 없으면 NULL이 반환됩니다. 정규식에 "g" 플래그가 있으면 결과는 모든 일치 항목을 포함하는 배열이 됩니다.

정규식을 인수로 사용하고 일치하는 첫 번째 패턴의 시작 위치를 반환하는 search() 메서드를 사용할 수도 있습니다.

Var myString = "가정"; var PatternLocation = myString.search(/ume/); // 삼

일치하는 항목이 없으면 메서드는 -1을 반환합니다.

후속 정렬을 위해 두 문자열 비교

로캘의 정렬 순서에 따라 두 문자열을 비교하려면 localeCompare 메서드를 사용할 수 있습니다. localeCompare 메소드는 세 가지 가능한 값을 반환합니다.

MyString = "닭"; var myStringTwo = "계란"; var whichCameFirst = myString.localeCompare(myStringTwo); // -1(-2를 반환하는 Chrome 제외) whichCameFirst = myString.localeCompare("chicken"); // 0 whichCameFirst = myString.localeCompare("apple"); // 1(Chrome은 2를 반환함)

위에 표시된 대로 원래 문자열이 문자열 인수보다 먼저 정렬되면 음수 값이 반환되고, 문자열 인수가 원래 문자열 뒤에 정렬되면 +1이 반환됩니다. null이 반환되면 두 문자열은 동일합니다.

블로그 사이트의 모든 독자들에게 인사드립니다. 이 기사에서는 텍스트 처리를 담당하는 내장된 jscript 개체인 문자열을 살펴보겠습니다.

스크립트 서버 프로그래밍 언어의 js String 내부 클래스는 하위 문자열 검색, 구문 분석 또는 교체와 같은 문자열 조작을 위한 메서드를 제공합니다. 속성이 하나 있습니다 길이문자열의 길이를 반환합니다. 기억해야 할 것은 . 클래스를 선언하기 위해 new 키워드와 String을 사용할 필요가 없습니다.

간단한 예를 살펴보겠습니다.

// js 문자열 객체 // length_string.js //************************************* var s1, s2; s1 = "일반 텍스트" ; s2 = new String("일반 텍스트"); WScript.Echo(s1.length + " \N"+ s2.길이 ) ;

여기서는 두 개의 변수 s1과 s2를 선언했으며 둘 다 텍스트 값을 저장합니다. 간단한 텍스트", 길이 속성을 사용하여 길이를 결정했습니다. 보시다시피 단순화된 형식과 더 번거로운 형식(새 키워드)을 모두 사용할 수 있습니다.

String 클래스의 주요 메서드를 살펴보겠습니다.

String JS 클래스의 메서드

s.charAt(색인)– s에서 주어진 인덱스에 있는 문자를 가져옵니다.

s.charCodeAt(색인)– 인코딩에서 지정된 문자 코드를 추출합니다. 유니코드 s의 인덱스를 통해.

s1.concat(s2)– s1과 s2의 연결(합집).

문자열.fromCharCode(c1,...,cN)- 유니코드 문자열을 생성합니다. 기호 대신 코드를 작성합니다 유니코드.

//************************************* // js 문자열 객체 // 문자열의 형성//CharCode_string.js에서 //************************************* var 내결과; // 안녕하세요 반환 MyResult = String .fromCharCode (104 , 101 , 108 , 108 , 111 ) ; WScript.Echo(MyResult);

s.indexOf(substr, startindex)– js String 클래스의 이 메소드를 사용하면 문자열 s에서 하위 문자열 하위 문자열을 검색할 수 있습니다. startindex 매개변수는 검색을 시작해야 하는 문자 수를 지정합니다. 이 매개변수가 없으면 처음부터 검색이 수행됩니다. 프로세스 자체는 왼쪽에서 오른쪽으로 발생합니다. indexOf는 숫자를 반환합니다. 해당 항목이 발견된 문자의 인덱스입니다. 아무것도 발견되지 않으면 값 -1이 반환됩니다. 그것을 잊지 말자 문자 번호 매기기는 0부터 시작됩니다..

//************************************* // js String 객체 // 문자열에서 검색 // indexOf_string.js //************************************* var MyStr= "하나, 둘, 셋, 넷", 내결과; MyResult= MyStr.indexOf("two", 2); WScript.Echo(MyResult);

s.lastIndexOf(substr, startindex)– indexOf와 유사하지만 역순으로 검색합니다.

s.match(rgExp)– String 클래스의 이 js 메소드를 사용하면 정규식(rgExp)을 사용하여 텍스트에서 s를 검색할 수 있습니다. 결과적으로 결과를 포함하는 배열이 얻어집니다. 배열의 첫 번째 요소는 발견된 텍스트이고, 두 번째 요소는 첫 번째 하위 표현식에 해당하는 하위 문자열이고, 세 번째 요소는 두 번째 하위 표현식에 해당하는 하위 문자열입니다. 예를 들어, URL을 구문 분석하는 스크립트를 살펴보겠습니다.

//************************************* // 문자열 js // URL 주소 분석// match_string.js //************************************* var url = /(\w+):\/\/([\w.]+)\/(\S*)/ ; 변수 텍스트 = "인터넷 페이지 http://www.site/~vladimir"; var result = text.match (url) , index, list= "" if (result != null ) ( for (var index in result) ( list+= result[ index] + " \N"; ) ) WScript.Echo (목록) ;

s.slice(시작, )– 텍스트, 매개변수에서 부분 가져오기 시작그리고 시작 위치와 끝 위치를 각각 지정하며 정수입니다.

s.분할(str)– 텍스트 s를 하위 문자열로 나누고 다음과 같이 씁니다. str 매개변수는 파티션의 시작을 나타내는 기호 기호를 지정합니다. 출력에서 우리는 배열을 얻습니다.

//************************************* // 문자열 js 객체 // 문자열을 배열로 구문 분석// 분할_문자열.js //************************************* var MyStr2, MyResult1, index, list= "" ; MyStr2 = "첫 번째, 두 번째 세 번째 네 번째"; MyResult1 = MyStr2.split (", " ) ; for (MyResult1의 var 인덱스) ( list+= MyResult1[ index] + " \N"; ) WScript.Echo (목록) ;

s.substr(시작[, 길이])– 슬라이스와 유사하지만 여기서는 종료 인덱스가 아닌 길이를 나타냅니다.

s.substring(index1, index2)– 주어진 문자열 s에서 부분 문자열을 얻을 수 있습니다. 하위 문자열원래 값은 변경되지 않습니다. 매개변수는 시작 및 끝 문자의 위치를 ​​지정합니다.

당신이 쓸 때 자바스크립트, 문자열을 사용하는 메서드의 구문 및 매개 변수에 대한 정보를 찾기 위해 인터넷을 검색해야 하는 경우가 많습니다.

나는 문자열 작업에 관한 많은 기사를 읽었습니다. 이 게시물에서는 문자열 작업을 위한 가장 일반적인 방법에 대한 예제와 간략한 설명을 보여줍니다. 빠른 참고를 위해 가장 일반적인 방법을 상단에 배치해보았습니다.

물론 대부분의 숙련된 개발자는 이미 많은 기술에 상당히 익숙할 것입니다. 그러나 이것은 초보자가 간단한 수단으로 복잡한 작업을 수행하는 데 도움이 될 수 있는 다양한 기술을 이해하는 데 좋은 목록이라고 생각합니다.

문자열로 변환

숫자, 부울 표현식 또는 객체를 문자열로 변환할 수 있습니다.

Var myNumber = 24; // 24 var myString = myNumber.toString(); // "24"

당신은 같은 방법으로 할 수 있습니다 끈():

Var myNumber = 24; // 24 var myString = String(myNumber); // "24"

값이 무엇인지 확실하지 않은 경우 없는또는 한정되지 않은, 당신이 사용할 수있는 끈(), 값 유형에 관계없이 항상 문자열을 반환합니다.

문자열을 하위 문자열로 분할

문자열을 하위 문자열 배열로 분할하려면 다음 메소드를 사용할 수 있습니다. 나뉘다():

Var myString = "coming,part,at,the,commas"; var substringArray = myString.split(","); // ["coming", "apart", "at", "the", "commas"] var arrayLimited = myString.split(",", 3); // ["오고", "떨어져", "에서"]

마지막 줄에서 볼 수 있듯이 함수의 두 번째 매개변수는 최종 배열에 포함될 요소 수에 대한 제한입니다.

문자열의 길이 얻기

문자열에 몇 개의 문자가 있는지 확인하려면 속성을 사용합니다. 길이:

Var myString = "당신은 정말 대단한 인물입니다."; var stringLength = myString.length; // 25

문자열에서 하위 문자열 찾기

하위 문자열을 검색하는 방법에는 두 가지가 있습니다.

용법 인덱스():

Var stringOne = "조니 왈도 해리슨 왈도"; var wheresWaldo = stringOne.indexOf("왈도"); // 7

인덱스()이 메서드는 문자열의 시작 부분부터 부분 문자열 검색을 시작하고 부분 문자열이 처음 나타나는 시작 위치를 반환합니다. 이 경우 - 7위입니다.

용법 마지막 인덱스Of():

Var stringOne = "조니 왈도 해리슨 왈도"; var wheresWaldo = stringOne.lastIndexOf("왈도"); // 22

이 메서드는 문자열에서 하위 문자열이 마지막으로 나타나는 시작 위치를 반환합니다.

두 방법 모두 하위 문자열을 찾을 수 없으면 -1을 반환하고, 둘 다 검색을 시작하려는 문자열의 위치를 ​​나타내는 선택적 두 번째 인수를 사용합니다. 따라서 두 번째 인수가 "5"이면 인덱스()문자 0-4를 무시하고 문자 5부터 검색을 시작합니다. 마지막 인덱스Of()문자 5부터 검색을 시작하고 문자 6 이상을 무시하고 뒤로 작업합니다.

하위 문자열 교체

문자열의 하위 문자열 발생을 다른 하위 문자열로 바꾸려면 다음을 사용할 수 있습니다. 바꾸다():

Var 슬러거 = "조쉬 해밀턴"; var betterSlugger = slugger.replace("h 해밀턴", "e 바티스타"); console.log(betterSlugger); // "호세 바티스타"

첫 번째 인수는 대체하려는 항목이고 두 번째 인수는 개행 문자입니다. 이 함수는 문자열에서 처음 나타나는 부분 문자열만 바꿉니다.

모든 항목을 바꾸려면 전역 플래그와 함께 정규식을 사용해야 합니다.

Var myString = "그녀는 자동차 해안에서 자동차 쉘을 판매합니다"; var newString = myString.replace(/automotive/g, "sea"); console.log(newString); // "그녀는 바닷가에서 조개껍질을 팔고 있습니다"

두 번째 인수에는 특수 템플릿이나 함수가 포함될 수 있습니다. 더 많은 내용을 읽을 수 있습니다.

문자열의 특정 위치에 있는 문자를 가져옵니다.

함수를 사용하여 기호를 얻을 수 있습니다 문자():

Var myString = "깃털의 새"; var whatsAtSeven = myString.charAt(7); // "에프"

JavaScript의 경우와 마찬가지로 문자열의 첫 번째 위치는 1이 아닌 0에서 시작합니다.

대체 기능으로 사용할 수 있습니다 charCodeAt()함수는 문자 코드입니다.

Var myString = "깃털의 새"; var whatsAtSeven = myString.charCodeAt(7); // "102" var whatsAtEleven = myString.charCodeAt(11); // "70"

"F" 문자(위치 11)의 코드는 "f" 문자(위치 7)와 다릅니다.

문자열 연결

대부분의 경우 "+" 연산자를 사용하여 문자열을 연결할 수 있습니다. 하지만 다음 방법을 사용할 수도 있습니다. 연결():

Var stringOne = "Knibb High 축구"; var stringTwo = stringOne.concat("rules."); // "Knibb High 축구 규칙"

이런 방법으로 우리는 쓰여진 순서대로 여러 줄을 하나로 결합할 수 있습니다:

Var stringOne = "손잡이"; var stringTwo = "높음"; var stringThree = "축구"; var stringFour = "규칙."; var finalString = stringOne.concat(stringTwo, stringThree, stringFour); console.log(최종문자열); // "Knibb 하이 축구 규칙."

부분 문자열 추출

다른 문자열의 일부에서 문자열을 가져오는 방법에는 3가지가 있습니다.

사용 일부분():

Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.slice(5, 10); // "fghij"

사용 부분문자열():

Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.substring(5, 10); // "fghij"

두 함수 모두에서 첫 번째 매개변수는 하위 문자열이 시작되는 문자(위치 0부터 시작)이고 두 번째 인수(선택 사항)는 하위 문자열이 반환되는 문자의 위치입니다. 예제 (5, 10)은 위치 5와 9 사이의 문자열을 반환합니다.

사용 하위 문자열():

Var stringOne = "abcdefghijklmnopqrstuvwxyz"; var stringTwo = stringOne.substr(5, 10); // "fghijklmno"

첫 번째 인수는 새 줄이 시작되는 문자의 위치이고 두 번째 인수는 새 줄의 시작 위치로부터의 문자 수입니다. 저것들. (5, 10)은 위치 5부터 시작하여 10자를 반환합니다.

문자열을 대문자 또는 소문자로 변환합니다.

번역에는 4가지 방법이 있습니다. 처음 2개는 문자열을 대문자로 변환합니다.

Var stringOne = "말해 보세요. 들리지 않습니다."; var stringTwo = stringOne.toLocaleUpperCase(); // "말해 보세요. 들리지 않습니다." var stringThree = stringOne.toUpperCase(); // "말해 보세요. 들리지 않습니다."

나머지 2개는 문자열을 소문자로 변환합니다.

Var stringOne = "소리를 지르지 마세요"; var stringTwo = stringOne.toLocaleLowerCase(); // "소리를 지르지 않아도 됩니다." var stringThree = stringOne.toLowerCase(); // "소리지르지 않아도 돼요"

"로케일" 방법을 사용하는 것이 더 좋습니다. 왜냐하면... 예를 들어 터키와 같은 다른 장소에서는 레지스터 표시가 우리가 익숙한 방식으로 작동하지 않으므로 결과가 우리가 원하는 것일 수 있습니다. "로케일" 방법을 사용하면 그러한 문제가 발생하지 않습니다.

패턴 매칭

문자열의 패턴 일치는 다르게 작동하는 두 가지 방법을 사용하여 수행할 수 있습니다.

방법 성냥()문자열에 적용되며 정규식을 매개변수로 사용합니다.

Var myString = "나무 척으로 던질 수 있는 나무의 양"; var myPattern = /.ood/; var myResult = myString.match(myPattern); // ["나무"] varpatternLocation = myResult.index; // 9 var originalString = myResult.input // "나무척으로 던질 수 있는 나무의 양"

방법 실행()정규식 객체에 적용되고 문자열을 매개변수로 사용합니다.

Var myString = "나무 척으로 던질 수 있는 나무의 양"; var myPattern = /.huck/; var myResult = myPattern.exec(myString); // ["척"] var PatternLocation = myResult.index; // 27 var originalString = myResult.input // "나무척으로 던질 수 있는 나무의 양"

두 방법 모두 첫 번째 일치 항목만 반환됩니다. 일치하는 항목이 없으면 반환됩니다. 없는.

방법을 사용할 수도 있습니다. 찾다()정규식을 사용하여 패턴에서 첫 번째 일치 위치를 반환합니다.

Var myString = "가정"; var PatternLocation = myString.search(/ume/); // 삼

일치하는 항목이 없으면 " -1 «.

정렬을 위해 두 문자열 비교

두 문자열을 비교하여 어느 문자열이 알파벳에서 먼저 나오는지 결정할 수 있습니다. 이를 위해 우리는 다음 방법을 사용할 것입니다. 로케일비교()이는 3가지 가능한 값을 반환합니다.

Var myString = "닭"; var myStringTwo = "계란"; var whichCameFirst = myString.localeCompare(myStringTwo); // -1(Chrome은 -2를 반환함) whichCameFirst = myString.localeCompare("chicken"); // 0 whichCameFirst = myString.localeCompare("apple"); // 1(Chrome은 2를 반환함)

위에 표시된 것처럼 문자열 인수가 원래 문자열 뒤에 오면 음수가 반환됩니다. 문자열 인수가 원래 문자열 앞에 오면 양수입니다. 반환된 경우 0 - 선이 동일함을 의미합니다.

반환 값을 확인하려면 if(result)를 사용하는 것이 좋습니다.< 0), чем if (result === -1). Последнее не будет работать в Chrome.

관심을 가져주셔서 감사합니다. 새롭고 흥미로운 것들을 많이 배웠기를 바랍니다!

기사 작성자: Alex. 범주:
발행일: 2013년 3월 19일