javascript - 正则表达式匹配字符串开头或字符串本身开头的符号

标签 javascript regex

我正在尝试想出一个正则表达式来捕获一组子域中的 TLD。所以我有这个:

/\.?google\.com$/i

这应该执行以下匹配:

sgoogle.com            -- no match
google.com             -- match
maps.google.com        -- match
job_s.map.google.com   -- match
place.google.com.eu    -- no match

这有效,除了第一个,即 sgoogle.com,它也匹配,但它不应该匹配。

所以我很好奇,有没有办法指定我在哪里执行 \.? 来匹配点或字符串的开头?

最佳答案

你就快到了。从字面上看,您的要求是:

(?:^|\.)google\.com$

但是根据您的需求,这可能会更好(或者不是,您告诉我):

\bgoogle\.com$

\b 表示单词边界

关于javascript - 正则表达式匹配字符串开头或字符串本身开头的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26683343/

相关文章:

regex - 让 Tabulize 忽略某些行并对齐其他行

Python:将字段值提取到新列中,写入Excel

java - 如何解析包含 Javascript 的网页?

javascript - TypeScript Lambda 函数错误 'return outside function definition'

javascript - for 循环中的 if 条件 - 性能差异

javascript - 使用 jquery 1.4 进行 Jquery 自动完成

javascript - 使用适用于 Node.js 的 AWS 开发工具包将二进制文件上传到 S3

python - 查找与给定正则表达式不匹配的字符

python - 将 Perl 正则表达式转换为 python 正则表达式

javascript - 用于查找关键字之间的模式并将其存储在组中的正则表达式