Javascript 如何删除分隔符和空格或标点之间的文本?
我有一个JavaScript字符串数组,其同义词由插入符号表示。举例如下:Javascript 如何删除分隔符和空格或标点之间的文本?,javascript,regex,Javascript,Regex,我有一个JavaScript字符串数组,其同义词由插入符号表示。举例如下: 我对他的决定感到困惑。 “你为什么这么刻薄、讨厌?”她哭着、呻吟着。 我想返回: 我对他的决定感到困惑。 “你为什么这么刻薄?”她哭了起来。 此/\^([^^]*)\./适用于单个标点符号,但我无法使其在[,:;?“]”]中运行。非常感谢您在这方面提供的帮助。您想使用字符串。请替换为空字符串 您希望匹配一个“^”后跟所有非空格字符,直到下一个空格,因此正则表达式将是 \^[^\s]+ 编辑:正如评论中所指出的,
我对他的决定感到困惑。
“你为什么这么刻薄、讨厌?”她哭着、呻吟着。
我对他的决定感到困惑。
“你为什么这么刻薄?”她哭了起来。
此
/\^([^^]*)\./
适用于单个标点符号,但我无法使其在[,:;?“]”]
中运行。非常感谢您在这方面提供的帮助。您想使用字符串。请替换为空字符串
您希望匹配一个“^”后跟所有非空格字符,直到下一个空格,因此正则表达式将是
\^[^\s]+
编辑:正如评论中所指出的,这不会调整标点符号
\^\w+
应该可以工作,因为\w匹配所有的“word”字符,即a-z、a-z、0-9和&尝试以下操作:
var str = "Why are you so mean^nasty?";
var regex = /\^\w+/;
var result = str.replace(regex, '');
console.log(result); //"Why are you so mean?"
要使用此正则表达式搜索并替换为空字符串:
\^([^^]*?)(?=[.,:;?"' ])
您可以在上看到您将要替换的部分,以及正则表达式的详细情况。我想您需要调整以考虑标点符号。谢谢。这很有用;链接也很有用。也感谢其他贡献者。