如何使用正则表达式取消标点符号、小写字母、消除空格和连字符?

Bri*_*oll 3 regex string

如果我有一个像这样的字符串

Newsflash: The Big(!) Brown Dog's Brother (T.J.) Ate The Small Blue Egg
Run Code Online (Sandbox Code Playgroud)

我如何使用正则表达式将其转换为以下内容:

newsflash-the-big-brown-dogs-brother-tj-ate-the-small-blue-egg
Run Code Online (Sandbox Code Playgroud)

换句话说,标点符号被丢弃,空格被连字符替换。

Mik*_*ark 5

听起来您想创建一个“URL 插件”——例如,文章标题的 URL 友好版本。这意味着您需要确保删除所有可能的非 URL 友好字符,而不仅仅是一些字符。你可以这样做(按顺序):

通过以下方式删除所有非字母非数字非空格字符:用空字符串
替换 regex 。[^A-Za-z0-9 ]""

将所有空格替换为破折号:
将 regex 替换\s+为字符串"-"

通过以下方式小写字符串:
Java s = s.toLowerCase();
JavaScript s = s.toLowerCase();
C# s = s.ToLowerCase();
Perl $s = lc($s);
Python s = s.lower()
PHP $s = strtolower($s);
Rubys = s.downcase