用于匹配任何子域和顶级域的Ruby正则表达式
我正在尝试创建一个正则表达式,它可以选择匹配任何子域,并匹配TLD。例如,它应该匹配用于匹配任何子域和顶级域的Ruby正则表达式,ruby,regex,Ruby,Regex,我正在尝试创建一个正则表达式,它可以选择匹配任何子域,并匹配TLD。例如,它应该匹配 test.example.com example.com 它不应该匹配 fakeexample.com fake.fakeexample.com 到目前为止,我已经有了这个,它匹配子域,但在顶级域时不匹配。 (\A |(https?:\/\/)?(\w*\S*)\.{1}示例\.com您可以使用 /\A(?:https?:\/\/)?(?:\S*\.)?example\.com\z/ 见 详细
- test.example.com
- example.com
- fakeexample.com
- fake.fakeexample.com
(\A |(https?:\/\/)?(\w*\S*)\.{1}示例\.com
您可以使用
/\A(?:https?:\/\/)?(?:\S*\.)?example\.com\z/
见
详细信息
-字符串的开头\A
-可选(如末尾的(?:https?:\/\/)?
量词重复1或0次)非捕获组匹配?
,可选http
,然后是s
子字符串/
-一个可选的非捕获组,匹配0个或多个非空白字符(带有(?:\S*\)?
)的1次或0次出现,然后是一个点(\S*
)\。
-一个example\.com
子字符串example.com
-字符串结尾\z
Foo.de
,其通信部门正在使用域com
,并且有一个名为example
的服务器,然后对example.com
的DNS查询将实际返回example.com.foo.de.
的地址。下面的答案有什么问题?