【发布时间】:2013-03-13 13:15:02
【问题描述】:
使用正则表达式,我想匹配行尾的所有非单词字符,或者,如果没有非单词字符,则匹配行尾。
这就是我认为应该如此简单的:
/\W*$/
即匹配零个或多个非单词字符,后跟行尾。
我在http://gskinner.com/RegExr/ 试过,但没那么简单。
然后,更进一步,我还想在行尾匹配空白,如下所示:
/[\W\s]*$/
即匹配集合中的零个或多个字符、非单词字符和空白字符,然后是行尾。
当然,这也不行。
在一天结束时,我想使用 javascript 将行尾的任何非字母数字字符替换为句号。
【问题讨论】:
-
你也想替换换行符吗?因为
$不匹配换行符,所以它匹配位置before\n。另一件事是\s已经包含在\W中,因为空格字符也是非单词字符。 -
\W*$是正确的。您是否选择了多行模式?如果你不这样做,$只会匹配字符串的末尾。 -
@AlanMoore 我现在看到了。我在 js 解释器中尝试过它,它工作得很好。另外,我不想匹配换行符,而且我没有使用多行模式。
标签: regex