繁体   English   中英

JavaScript 正则表达式仅在字符组之间用空格替换为字母数字

[英]JavaScript regex replace as alphanumeric with spaces only between character groups

我对 JavaScript regex 没有太多经验,我不确定如何只允许输入包含字母数字字符,这些字符组之间有一个空格。

一些理想的例子:

"abcde"
"ab cde"
"ab c de"

一些不受欢迎的例子:

" abcde"
"abcde "
"ab   c   de"

我意识到我可以使用trim()来处理第一个和最后一个案例, split(" ") ,然后只连接非空字符串,但想知道如何使用正则表达式来做到这一点。

附带说明一下,我可以使用\\w来表示允许的字符,“_”不是问题。

如果您正在尝试修复糟糕的情况,您可以使用以下内容:

text = text.replace(/^ +| +$|( ) +/g, "$1");

/^ +/将匹配开头的一个或多个空格, / +$/将匹配结尾的一个或多个空格, /( ) +/将匹配字符串中任意位置的两个或多个空格。 前两个表达式的捕获组将是一个空字符串,但对于( ) +它将是一个空格,因此您将仅用一个空格替换多个空格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM