我在javascript写一个正则表达式。 目的是从“部分”信息中删除标题。 例如:
但是我想在“部分”之前保持ponctuation的特殊情况是有一个领先的副标题:
到目前为止,我写了一个“有效”的正则表达式,但我认为它可以简化。
这是一个工作示例:https://regex101.com/r/0dvJL4/5有没有办法简化模式的重复(在正则表达式中的前瞻和&之后使用?
重复的模式:
{0,3}[\(\[]? ?[^\w]part[^\w][ -:]?(?:III|II|IV|IX|I|VIII|VII|VI|V|XIII|XII|XI|X|one|two|three|four|five|six|seven|eight|nine|ten|\d{1,3}){1} ?#?\.?[\)\]]?[\(\[]?(?:final)?[\)\]]?
thx任何建议
我不明白为什么你需要一个重复模式。此外,也许你不应该包括每个可能的零件号案例(\w+
应该做):
/\s*[,-]?\s*[[(]?part[\s-:]\w+#?[\])]?/ig
与str.replace(regex, "")
一起使用它可以去掉你不需要的部件。