regex - 如何匹配行尾或仅行尾的任何非单词字符

标签 regex

使用正则表达式,我想匹配行末尾的所有非单词字符,或者,如果没有非单词字符,则仅匹配行末尾。

这就是我认为应该简单的:

/\W*$/

也就是说,匹配零个或多个非单词字符,后跟行尾。

我尝试过http://gskinner.com/RegExr/但事情没那么简单。

然后,更进一步,我还想匹配行尾的空格,如下所示:

/[\W\s]*$/

也就是说,匹配集合中的零个或多个字符、非单词字符和空白字符,后跟行尾。

当然,这也行不通。

最终,我想使用 javascript 替换行末尾不是带有句号的字母数字字符的任何内容。

最佳答案

.replace 方法与直接正则表达式一起使用,而不是字符串。 ^ 是“非”字符。所以任何不是字母数字的东西。

var good = bad.replace(/[^\w]*$/g, "");

证明:

> bad = "asd$f   "
"asd$f   "
> bad.replace(/[^\w]*$/g, "")
"asd$f"

关于regex - 如何匹配行尾或仅行尾的任何非单词字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15386391/

相关文章:

c# - 从任何域中提取域名的正则表达式

javascript - 允许在正则表达式中使用减号

javascript - JS 正则表达式帮助匹配 URL

python - 有没有办法在正则表达式 python 中检查同一字符串中的两种不同模式?

regex - 使用正则表达式或漂亮的汤从 Instagram 抓取某人的网站

PHP:在存储到 MySQL 数据库之前剥离链接(正则表达式剥离?)

使用正则表达式验证 IPv4 和 IPv6 的 PHP 函数

regex - 新手正则表达式问题 - 检测垃圾邮件

jQuery Linkify 插件 : Can't handle links that end in parenthesis

正则表达式和 yup : Allow a certain special character, 但不能重复