Javascript 如何在字符串中插入任何字符序列(给定的除外)?
我想为Javascript 如何在字符串中插入任何字符序列(给定的除外)?,javascript,regex,Javascript,Regex,我想为\namefunction[~argument inside~]创建一个正则表达式,在argument inside行中,不应该有一个字符序列[~和~]如何执行此操作?我试着像这样使用(?!)(?!(\[\~\124;\~\]),但这不起作用。最后的表达式是这样的:\[a-z]+(\[\~(?!(\[\~\~))\~\]+ 为了让您更容易理解,例如:括号中的任何字符序列都不包含类似这样的序列 您需要使用以获得尽可能多的组: const regex=/\\.\[~.\\]/g; log(`
\namefunction[~argument inside~]
创建一个正则表达式,在argument inside
行中,不应该有一个字符序列[~
和~]
如何执行此操作?我试着像这样使用(?!)
(?!(\[\~\124;\~\]),但这不起作用。最后的表达式是这样的:\[a-z]+(\[\~(?!(\[\~\~))\~\]+
为了让您更容易理解,例如:括号中的任何字符序列都不包含类似这样的序列
您需要使用以获得尽可能多的组:
const regex=/\\.\[~.\\]/g;
log(`some text\\function[~asdasdasd~]sometext2\\function2[~dsf~sdf~]some text 3\\function3[~sdfs~]dfsdf~]`.match(regex))
您能提供输入和预期输出的实际示例吗?@ankr例如输入一些文本\函数[~asdasdasd~]sometext2 \函数2[~dsf~sdf~]一些文本3 \函数3[~sdfs~]dfsdf~]
输出:数组[“\function[~asdasdasd~]”,“\function2[~dsf~sdf~]”,“\function3[~sdfs~]”
或数组[“\function”[~asdasdasd~],“\function2[~dsf~sdf~]”,“\function3[~sdfs~]dfsdf~]”
返回哪个数组并不重要,主要的是至少返回一些现在它返回整个字符串array[“\function[~asdasdasd~]sometext2\function2[~dsf~sdf~]sometext 3\function3[~sdfs~]dfsddfsf~]”