Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从字符串中删除任何类型的URL_Php_Regex - Fatal编程技术网

Php 从字符串中删除任何类型的URL

Php 从字符串中删除任何类型的URL,php,regex,Php,Regex,我正在寻找一个regex来从我的字符串中删除所有类型的URL。 假设这是我想要从URL中清除的字符串 你好,这是我的网站:http://my.website.com 你好,这是我的网站:http://www.my.website.com 你好,这是我的网站:http://www.website.com 你好,这是我的网站:http://website.com 你好,这是我的网站:https://website.com 你好,这是我的网站:https://www.website.com 嗨,这是我

我正在寻找一个
regex
来从我的字符串中删除所有类型的URL。 假设这是我想要从URL中清除的字符串

你好,这是我的网站:http://my.website.com

你好,这是我的网站:http://www.my.website.com

你好,这是我的网站:http://www.website.com

你好,这是我的网站:http://website.com

你好,这是我的网站:https://website.com

你好,这是我的网站:https://www.website.com

嗨,这是我的网站:website.com

特别是,我想正确删除('website.com')


有什么想法吗?谢谢

使用下面的正则表达式,通过
preg\u replace

(?:https?:\/\/)?(?:www\.)?(?:my\.)?website\.com

更新:

\b(?:https?:\/\/)?(?:www\.)?[-\w]+(?:\.[-\w]+)*\.(?:com|in|tk|ir|info)\b

你可以试试这个,我刚刚修改了Avinash Raj的答案

(?:https?:\/\/)?(?:www\.)?(?:[a-z]+\.)?[a-z]+\.com

您的预期输出是什么?`您好,这是我的网站:`@Avinashraja感谢您的否决票,但请回答问题:)只需删除
之后的所有内容,直到行的末尾。@BurhanKhalid它只是一个“假设”,实际字符串是动态的,可以是后面、之前的任何内容……它可以是任何域,任何有限公司,你刚才给了我一个静态的答案,你能把?website\.com改成能找到
mysite.com
funcy.site.com
或..准确地说,但域名可能包含“-”,它不能与它一起工作@AvinashRajops,有限公司可以是.in或.tk或.ir或。info@Avinash拉杰,你很棒,我正在学习你的答案中的正则表达式。这很好,如果你对我的答案有任何疑问,请问我:-)