答案 0 :(得分:0)
只是迭代Jens'评论,我们必须猜测:当出现其他信息时,您的预期输出是多少,例如: http://therealzenstar.blogspot.fr/somedata.html
。它还在blogspot.fr
吗?这些例子是否需要加入?
你说你要替换"其他一切"与""
。 Replace()
将替换与您想要的内容相匹配的所有内容。因此,要将其替换为""
,您需要匹配不想要的所有内容。但是,它可能更容易捕捉你想要的东西并用$ 1替换所有的匹配。
假设您始终只想要domain.xx
,即使出现更多信息。这样的事情可行:^(?:https?:\/\/)?[^\/\s]*\.([^.\s\/]*\.[^.\s\/]*)(?:$|\/.*)
,如图所示:https://regex101.com/r/hN8iQ7/1
如果您的域还包含具有多个扩展名的域,则会出现问题。即domain.co.uk
。您需要专门对其进行处理(命名),因为很难概括区分这些项目的方法。
^(?:https?:\/\/)?[^\/\s]*?\.([^.\s\/]*\.(?:co\.uk|[^.\s\/]*))(?:$|\/.*)
- 添加了.co.uk
选项。 https://regex101.com/r/hN8iQ7/2。
yourregex.Replace(yourstring, "$1")
可能会满足您的需求。