【发布时间】:2013-08-19 00:11:43
【问题描述】:
在 Java/Android 中,您可以使用格式字符串来指定某些 Outlook 的外观。例如,这些格式字符串可以传递给String.format() 或Formatter()。
简单的例子是%s 或%1$d。
现在我想编写一个在 JavaScript 中工作的正则表达式,让您从给定的文本中提取 Java 的格式字符串。
我的解决方案是以下正则表达式:
%(([0-9]+\$)?)([,+ (\-#0]*)([0-9]*)(.[0-9]*)((hh|h|l|ll|L|z|j|t)*)(d|i|u|f|F|e|E|g|G|x|X|o|s|S|c|C|a|A|b|B|h|H|p|n|%)
但是,这甚至不适用于最简单的情况 (%s)。但它似乎适用于所有其他(更复杂的)情况。
我在这里要问的是:您认为这是一个好的(正确的)正则表达式还是缺少什么?
【问题讨论】:
标签: java javascript android regex string-formatting