2012-07-04 2 views

답변

2

마임 유형은 쉼표 ,과 원시 데이터의 시작 부분으로 구분됩니다. 이 정규식에 따르면 take everything from the beginning (^) that is NOT a comma ([^,]*) (the star makes it as many characters until there is a comma) and take the comma itself (,). Then replace it by nothing (''). 이 항목은 시작 부분에 표시되어 있기 때문에 첫 번째 항목 만 가져옵니다.^문자열의 시작 부분에 있어야합니다.

1

정규 표현식은 두 개의 슬래시 사이의 텍스트이며 첫 번째 캐럿 (^)은 문자열의 시작 부분을 의미하고 대괄호는 문자 클래스를 의미하며 대괄호 안의 캐럿은 쉼표를 제외한 모든 문자를 의미합니다. 닫는 괄호 다음의 별표 (*)는 문자 클래스에서 정의 된 문자 (다시 쉼표를 제외한 모든 문자)가 0 개 이상 일치한다는 것을 의미하고 마침내 마지막 쉼표는이 모든 후에 쉼표와 일치한다는 것을 의미합니다. 그런 다음 replace 함수에서 사용되므로 일치하는 결과가 두 번째 매개 변수로 바뀝니다. 빈 문자열.

기본적으로 'content'변수의 첫 번째 쉼표까지의 첫 문자를 일치시킨 다음 빈 문자열로 바꿉니다.

+0

입니까? –

+0

정규 표현식의 경우 예 .. javascript replace 함수는 일반 문자열도 허용하므로 정규 표현식을 사용하여 일치를 수행하려는 슬래시가 슬래시로 표시됩니다. 그 말이 맞는다면 ... – dano

2

가장 먼저 알아 두어야 할 점은 자바 스크립트에 정규식 리터럴이 있으며 슬래시 쌍으로 구성된다는 것입니다. 그래서 "..."은 문자열이고, /.../은 정규 표현식입니다. 이것이 자바 정규 표현식과 비교할 때 코드가 보여주는 유일한 차이입니다.

정규식 내의 [abc]을 문자 클래스라고하며, "a, b 또는 c 중 하나의 문자"를 의미합니다. 반대로 [^abc]은 음수 문자 클래스입니다. 즉, 한 문자 (a, b 또는 c 제외)을 의미합니다.

그래서 샘플을 의미합니다 : 그것은 두 개의 슬래시 사이의 표현을 넣어 반드시이

/  # Start of regex literal 
^  # Start the match at the start of the string 
[^,]* # Match any number of characters except commas 
,  # Match a comma 
/ # End of regex literal 
+0

답장을 보내 주셔서 감사합니다. 정말 도움이됩니다. –

관련 문제