Javascript 替换两个字符串之间的多行文字
我需要使用Javascript正则表达式替换Javascript 替换两个字符串之间的多行文字,javascript,regex,multiline,Javascript,Regex,Multiline,我需要使用Javascript正则表达式替换foo{和}bar之间的old值 foo{old}bar 如果old是一行,则此操作有效: replace( /(foo{).*(}bar)/, '$1' + 'new' + '$2' ) 我需要让它与以下各项一起工作: foo{old value which takes more than one line}bar 如何更改正则表达式?将正则表达式更改为 /(foo{)[^{}]*(}bar)/ 或 这样它也会匹配一个换行符[
foo{
和}bar
之间的old
值
foo{old}bar
如果old
是一行,则此操作有效:
replace(
/(foo{).*(}bar)/,
'$1' + 'new' + '$2'
)
我需要让它与以下各项一起工作:
foo{old value
which takes more
than one line}bar
如何更改正则表达式?将正则表达式更改为
/(foo{)[^{}]*(}bar)/
或
这样它也会匹配一个换行符[^{}]*
匹配任何字符,但不匹配{
或}
中的任何字符,零次或多次<代码>[\s\s]*?匹配任何空格或非空格字符,零次或多次非贪婪匹配。将正则表达式更改为
/(foo{)[^{}]*(}bar)/
或
这样它也会匹配一个换行符
[^{}]*
匹配任何字符,但不匹配{
或}
中的任何字符,零次或多次[\s\s]*?
匹配任何空格或非空格字符,零次或多次非贪婪。感谢您的快速回答!我会尽快接受的。:)谢谢你的快速回答!我会尽快接受的。:)