首页 > 解决方案 > RegEx 删除不需要的字符模式

问题描述

我需要从字符串中删除一些字符。但是,有一些限制。

例句

有两个“@planes”在@它们的构建方式上几乎“相同”。

我需要找到模式'@和下一个'。这些字符需要从字符串中删除。但是,如果只有一个'或只有一个@,它们应该保持不变。澄清一下,字符串可以包含一个或多个单词,开头用'@'括起来,结尾用一个''括起来。需要删除封闭字符。

删除字符后,它应该如下所示:

有两架飞机在@它们的建造方式上几乎是相同的。

另一个示例短语:

'@computer' 有时可能非常'@expensive in price',但在其他情况下它可能是@cheap 甚至免费的。

删除字符后,它应该如下所示:

有时计算机的价格可能非常昂贵,但在其他情况下,它可能是@cheap 甚至是免费的。

正则表达式应该在 JavaScript 中工作。

标签: javascriptregexcharacter

解决方案


/'@([a-z0-9\s]+)'/gi为你工作吗?

"A '@computer' can sometimes be very '@expensive in price' but in other cases it can be @cheap or even free'.".replace(/'@([a-z0-9\s]+)'/gi, '$1');

您可以查看https://regex101.com/以获取有关 regexp 本身的详细说明。


推荐阅读