javascript - JavaScript 是否支持复合正则表达式?
问题描述
例如,如果我想匹配 ips,我可以这样分解它:
const octet = /\d{1,3}/;
const ip = /{octet}\.{octet}\.{octet}\.{octet}/;
解决方案
你可以混合使用new RegExp()
和模板文字来做类似的事情。
下面是一个例子。
const octet = /\d{1,3}/;
const octetS = octet.source;
const ip = new RegExp(
`^${octetS}\\.${octetS}\\.${octetS}\\.${octetS}$`);
const ips = [
'127.0.0.1',
'10.0.2',
'12.10.2.5',
'12'];
for (const checkip of ips)
console.log(`IP: ${checkip} = ${ip.test(checkip)}`);
推荐阅读
- sql - 用于解析 CLINICAL 列的嵌套案例表达式
- jvm - 运行 jmap -heap pid 时附加到进程的错误
- javascript - 什么都没有输入时 Ace 自动完成
- amazon-web-services - 每个新实例 EC2 上的 SSH 连接在几秒钟后断开,然后任何重新连接尝试总是返回连接超时错误
- python - 深度删除的递归不会越过匹配项
- reactjs - 如何使用 MaterialUI 构建此布局?反应
- excel - 如何为多个 if / isnumber 制作一个更简单的公式
- ruby-on-rails - Rails I18n,响应对象的占位符
- python - Python - 将两个列表导入一个类并使用运算符重载来添加它们
- python - 在 QListFiew 中过滤/搜索 QFileSystemModel(可能是 QSortFilterProxyModel)