Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.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
Sql 替换主机名正则表达式_Sql_Regex_Hostname - Fatal编程技术网

Sql 替换主机名正则表达式

Sql 替换主机名正则表达式,sql,regex,hostname,Sql,Regex,Hostname,我需要提取主机名并将其替换为{host\u name} 我用这个表达 SELECT regexp_replace(str, '[\/]{2}(.*)[\.|:]', '{HOST_NAME}', 1) from dual str = http://localhost:8080/test str = https://test-app.uk.ru/test 预期结果: > http://localhost:8080/test -> http://{HOST_NAME}:8080/tes

我需要提取主机名并将其替换为{host\u name} 我用这个表达

SELECT regexp_replace(str, '[\/]{2}(.*)[\.|:]', '{HOST_NAME}', 1) from dual
str = http://localhost:8080/test
str = https://test-app.uk.ru/test
预期结果:

> http://localhost:8080/test -> http://{HOST_NAME}:8080/test
> https://test-app.uk.ru/test - > https://{HOST_NAME}.uk.ru/test
http://localhost:8080/test -> http:{HOST_NAME}8080/test
https://test-app.uk.ru/test - > https:{HOST_NAME}uk.ru/test
结果:

> http://localhost:8080/test -> http://{HOST_NAME}:8080/test
> https://test-app.uk.ru/test - > https://{HOST_NAME}.uk.ru/test
http://localhost:8080/test -> http:{HOST_NAME}8080/test
https://test-app.uk.ru/test - > https:{HOST_NAME}uk.ru/test

关于
(?您可以使用以下方法:

SELECT regexp_replace(str, '://[^.:]+', '://{HOST_NAME}', 1) from dual

://[^.:]+
匹配:

  • ://
    -文字子字符串
  • [^.:]+
    -1个或多个字符,而不是
见:


您使用的是哪种dbms?选择regexp_replace(str),(?)?