【发布时间】:2013-03-04 23:21:30
【问题描述】:
基本上我有以下几点:
- 输入字符串(例如ABCDEFGHI)
- 输入模板(如XXX-XXX-XXX)
我想看到的输出是ABC-DEF-GHI
我想它会像"XXX-XXX-XXX".replace("regex", "ABCDEFGHI");
关键是模板是动态的。它可能是XXX-XXX-XXX 或XX-XXXX-XXX 或任何其他可以包含任何特殊字符但要匹配的字符始终为X 的组合。
模板的长度或组数不受特殊字符分隔的限制。
即 XX-X-X 和 XXX-XXX-XXX-XXX-X 都是有效的模板,只要 X 的数量与输入字符的数量相同。
到目前为止,我有这个:"/^([^a-zA-Z0-9]*X){9}[a-zA-Z0-9]*$/",它将验证我的模板。
任何人都可以对此有所了解吗?有没有办法用字符串中的一个字符替换模板中的一个匹配字符?
【问题讨论】:
-
你用什么语言做这个?根据引擎的不同,使用正则表达式可能会更容易。
-
PHP 和 C++ 都需要处理这个问题。
-
如果有人需要正则表达式帮助,这是一个很好的资源:@987654321@
标签: php c++ regex templates string-formatting