繁体   English   中英

使用javascript中的正则表达式删除和字符

[英]Remove & characters with regex in javascript

我在正则表达式遇到的问题上有点卡住

这是我的字符串: &Biblioteks&klasse &Test something & something

这是我的预期结果: Biblioteksklasse Test something & something

这是我的实际结果: Biblioteksklasse Test something something

这是我的问候: /^&|(?=\\D)&/

有人知道我如何获得实际结果吗?

您似乎想删除&如果它在单词char旁边。

在这种情况下,请使用

s.replace(/&\b|\b&/g, '')

请参阅此正则表达式演示 &\\b匹配&后跟单词char(字母,数字或_ ),而\\b&匹配&前跟单词char。

如果打算在非空格字符旁边将其删除,请使用

s.replace(/&(?=\S)|(\S)&/g, '$1')

请参阅此正则表达式演示 它匹配:

  • &(?=\\S) -一个& ,后跟一个非空格字符
  • | - 要么
  • (\\S) -第1组(后继替换模式中以$1 ):任何非空白char
  • & -一个&字符。

使用回溯,您可以编写:

/(&(?=\w)|(?<=\w)&)/

您可以使用以下简单的正则表达式:

&(?=\w)

它与' & '相匹配,并向前看以确保其后跟一个Word字符。

然后用empty string replace

如何使用:

var text = '&Biblioteks&klasse &Test something & something';
var regex = /&(?=\w)/g;
var output = regex.replace(text, '');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM