使用正则表达式

时间:2016-12-27 19:32:33

标签: regex

我有一个字符串,我想做以下事情:

  1. 删除所有以http,https,www

  2. 开头的链接
  3. 删除example.comexample.netexample.us以及example.com/foo等链接。 example.com可能是一个不同的网站。

  4. 我想保留像3.14这样的小数。
  5. 我不是Regex的专业人士,但我尝试了以下表达式:

    http[^\s]+|www[^\s]+
    

    它适用于http,https和www。现在我被example.com等等困住了....

    感谢。

    实施例

    输入:

    此文字为 http://www.example.com https://www.example.com www.example.com example.com example.us example.us/test 这是文字3.14

    输出

    这是文本这是文本3.14

3 个答案:

答案 0 :(得分:1)

您可以使用这样的正则表达式:

[^\s\d]+\.[^\s\d]+

<强> Working demo

答案 1 :(得分:0)

尝试以下方法,将其替换为:

(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6}) ?
什么都没有。

演示:https://regex101.com/r/HmwSea/4

使用网址的几个有用的正则表达式:8 Regular Expressions You Should Know

答案 2 :(得分:0)

尝试更换:

(https?:\/\/)?(www\.)?\w+\.\w+ ?

什么都没有

请注意,这对于irc.example.com这样的网址不起作用:

(https?:\/\/)?(\w\.)*\w+\.\w+ ?

然而,这些regrexs匹配所有单词。例如13.34。 (但不是Mr.)所以要小心。

(基于streetturtle&#39;代码)