Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.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
Regex 正则表达式以根据点选择获取值_Regex_Regex Group - Fatal编程技术网

Regex 正则表达式以根据点选择获取值

Regex 正则表达式以根据点选择获取值,regex,regex-group,Regex,Regex Group,我有下面提供的一些主机名,我只想提取dot linux7.4q22018.am.nomas.net uskbkriq01v.na-rdc.pro.com dtc2233.dti.us-cdc.pro.com atgrk01labt001v.at-cdc.rci.rs.pro.com atgrk01labt002v.at-cdc.rci.rs.pro.com 我的试用版: 我正在使用下面的rgex,它提取主机名包含第一个点后得到的所有内容 ([?\.].*) 结果 .4q22018.am.

我有下面提供的一些主机名,我只想提取dot

linux7.4q22018.am.nomas.net
uskbkriq01v.na-rdc.pro.com
dtc2233.dti.us-cdc.pro.com
atgrk01labt001v.at-cdc.rci.rs.pro.com
atgrk01labt002v.at-cdc.rci.rs.pro.com
我的试用版:

我正在使用下面的rgex,它提取主机名包含第一个点后得到的所有内容

([?\.].*)
结果

  .4q22018.am.nomas.net
  .na-rdc.pro.com
  .dti.us-cdc.pro.com
  .at-cdc.rci.rs.pro.com
  .at-cdc.rci.rs.pro.com
预期:

  am.nomas.net
  na-rdc.pro.com
  us-cdc.pro.com
  rci.rs.pro.com
  rci.rs.pro.com
使用:


每个
[^.]+
匹配一系列非点字符。因此,这与其中3个匹配,由
分隔。
$
使它在字符串末尾匹配,因此它匹配最后3个组。

您是在尝试编写正确的regexp,还是只是发布一个猜测,以便有人为您做这件事?您的regexp中没有3个点。为什么字符集中有
?当它在
[]
@Barmar中时,也不必转义
,这是我在splunk中使用的正确正则表达式,我已经对它进行了测试
[^.]+\.[^.]+\.[^.]+$