q="AWORD"
이 포함 된 문자열이 있는데 q="AWORD"
을 q="THEWORD"
으로 바꾸고 싶습니다. 그러나, 나는 AWORD가 무엇인지 모르겠다. 문자열과 정규 표현식을 결합하여 값을 알지 못하고 매개 변수를 대체 할 수 있습니까? 이것은 내가 지금까지 가지고있는 것입니다 ...Javascript : String replace problem
globalparam.replace('q="/+./"', 'q="AWORD"');
q="AWORD"
이 포함 된 문자열이 있는데 q="AWORD"
을 q="THEWORD"
으로 바꾸고 싶습니다. 그러나, 나는 AWORD가 무엇인지 모르겠다. 문자열과 정규 표현식을 결합하여 값을 알지 못하고 매개 변수를 대체 할 수 있습니까? 이것은 내가 지금까지 가지고있는 것입니다 ...Javascript : String replace problem
globalparam.replace('q="/+./"', 'q="AWORD"');
당신이 갖고있는 것은 정규 표현식이 아니라 문자열입니다. 나는 이것이 당신이 원하는 생각 : 당신이 문자열과 정규 표현식을 "결합"을 왜 생각이있어 어떻게
globalparam.replace(/q=".+?"/, 'q="THEWORD"');
알아요,하지만 정규식은 와일드 카드의 존재가 필요하지 않는 경우에만 . 정규식은 와일드 카드를 포함 할 수있는 패턴과 비슷하지만 그렇지 않으면 주어진 정확한 문자를 일치 시키려고합니다.
q="
을 : 다음과 같이 위 표현은 작동 자 q
, =
및 "
을 맞 춥니 다.
.+?"
: 다음 문자 (.
)와 일치하고 그 다음 문자는 "
입니다. 최소한 하나의 문자 (+
)가 있어야하며 일치하는 내용은 욕심이 많지 않습니다 (?
). 가능한 한 적은 수의 문자를 일치 시키려고합니다. 그렇지 않으면 .+"
을 사용한 경우 까지의 모든 문자와 마지막으로 문자열의 인용 부호가 일치합니다.펠릭스의 대답은 당신에게 해결책을 줄 것이다,하지만 당신은 실제로 문자열을 사용하여 정규 표현식을 구성하려는 경우 당신이 이런 식으로 수행 할 수 있습니다
var fullstring = 'q="AWORD"';
var sampleStrToFind = 'AWORD';
var mat = 'q="'+sampleStrToFind+'"';
var re = new RegExp(mat);
var newstr = fullstring.replace(re,'q="THEWORD"');
alert(newstr);
mat =
당신이 구축 정규식, 결합 문자열 또는 무엇이든을 필요합니다.
re =
RegExp 생성자, 전역, 대소 문자 구분 등을 원할 경우 여기에서 수행하십시오.
마지막 라인은 string.replace(RegExp,replacement);