使用 RegExp 删除特定字符串
Remove specific string using RegExp
我有一个不同的字符串:
Word1-A-OK
Word2-Sample-R-OK
Word3-A
如何使用 Regexp 删除这些 (-A, -A-OK, -A-NG, -R, -R-OK, -R-NG, -W, -C)
字符串?我想要的输出是:
Word1
Word2-Sample
Word3
这是我当前的正则表达式:
(\.|-A|[^\w]+R|[^\w]+OK|[^\w]+NG|[^\w]+W|[^\w]+C)
您可以匹配示例数据
-[AR](?:-OK)?
并替换为空字符串
匹配所有的组合
(\w+)-(?:[AR](?:-(?:NG|OK))?|[WC])$
并替换为第 1 组。
你似乎把这个复杂化了。只需对以下交替进行正则表达式替换:
-(?:[AR](?:-(?:OK|NG))?|W|C)$
然后,替换为空字符串,有效去除这些后缀。
我有一个不同的字符串:
Word1-A-OK
Word2-Sample-R-OK
Word3-A
如何使用 Regexp 删除这些 (-A, -A-OK, -A-NG, -R, -R-OK, -R-NG, -W, -C)
字符串?我想要的输出是:
Word1
Word2-Sample
Word3
这是我当前的正则表达式:
(\.|-A|[^\w]+R|[^\w]+OK|[^\w]+NG|[^\w]+W|[^\w]+C)
您可以匹配示例数据
-[AR](?:-OK)?
并替换为空字符串
匹配所有的组合
(\w+)-(?:[AR](?:-(?:NG|OK))?|[WC])$
并替换为第 1 组。
你似乎把这个复杂化了。只需对以下交替进行正则表达式替换:
-(?:[AR](?:-(?:OK|NG))?|W|C)$
然后,替换为空字符串,有效去除这些后缀。