我尝试了moment(new Date("2016" + "/" + "06" + "/01").toISOString()).format('MMMM YYYY')
,但它根本不起作用。
我想要一个由任何字符组成的线来匹配这个正则表达式。
(^[.*]{1,50}$)/gm
但是,超过50个字符的行不应该匹配。
答案 0 :(得分:3)
您正在指定1-50次出现的.
或*
字符串。如果你想要一个任何字符的字符串,[...]
字符类是错误的(它枚举你想要匹配的文字字符);您正在寻找没有方括号的.
,它与任何一个字符匹配。
正则表达式是
^.{1,50}$
某些语言要求您在正则表达式周围指定/.../
之类的分隔符,但很难从您的示例中判断出您的是否是其中之一;在这种情况下,您缺少开始分隔符。
如果您需要在同一行上找到多个匹配项,则/g
标志才有意义。如果/m
和^
锚点与多行文字中的换行符匹配,$
标记就有意义。
如果您的问题标题正确,并且您希望在 50个字符下正确,请将50
更改为49
(也许1
更改为0
)。
答案 1 :(得分:1)
你的正则表达式,[.*]
只匹配点.
和*
,因为在[]
内部,两者都是字面上对待的。尝试
/^.{1,50}$/gm
匹配介于1到50之间。如果您还想捕获,则添加括号
/(^.{1,50}$)/gm