Regex替换非A-Z字符加上特定字符串

Regex to replace non A-Z characters plus specific strings

本文关键字:字符串 字符 替换 A-Z Regex      更新时间:2023-09-26

我试图建立一个regex(用于Javascript),基本上做/(['s'W])+/g,添加特定的字符串(不区分大小写)。

现在我这样做:

 var a = 'Test 123 Enterprises PTY-Ltd&Llc.';
 a.toLowerCase()
  .replace('pty','')
  .replace('ltd','')
  .replace('llc','')
  .replace(/(['s'W])+/g, '');
  // Result: 'test123enterprises'

当然,我很想把这一切都包装成一个replace()方法,但是我找不到任何关于如何通过regex实现这一点的在线文档。这可能吗?

试试这个:

a.toLowerCase().replace(/pty|ltd|llc|'W+/g,'');

它使用管道,这基本上是正则表达式的OR操作符。

您可以使用逻辑OR:

/pty|ltd|llc|(['s'W])+/g

您可以使用替换操作符|来指定替换:

var re = /'b(?:pty|ltd|llc)'b|'W+/gi; 
var str = 'Test 123 Enterprises PTY-Ltd&Llc.';
var result = str.replace(re, '').toLowerCase();
alert(result);

要删除pty, ltdllc作为整个词,您需要使用词边界'b。此外,您不需要捕获组,因为您不使用它。此外,'W包含's,无需重复。