繁体   English   中英

如何使用正则表达式将空格插入到驼峰大小写字符串中

[英]How to use regular expressions to insert space into a camel case string

我使用以下正则表达式将空格插入camel-case字符串

var regex = /([A-Z])([A-Z])([a-z])|([a-z])([A-Z])/g;

用法示例

var str = "CSVFilesAreCoolButTXTRules";
str = str.replace( regex, '$1$4 $2$3$5' );
// "CSV Files Are Cool But TXT Rules"

这样工作正常,但我也想在字符串中的任何数字之前和之后放置空格,虽然我不希望在各个数字之间插入空格,如果数字前面有$那么空格应该在它之前,并且不是数字。

我还想删除除数字,字母, $符号和点之外的任何字符. 在一个数字内。

例如,

MRRPLowPriceUSD $ 10.10HighPriceUSD $ 1998.59595CommentsNoChangeReportedNTPL1001KSE,100INDEX

应该成为

MRRP低价USD $ 10.10高价USD $ 1998.59595评论无变化报告NTPL 1001 KSE 100 INDEX

注意-被删除了。

任何援助将不胜感激。

相关: put-space-in-camel-case-string-using-regular-expression

试试这个正则表达式并使用正面预测替换:

var regex = /([^A-Za-z0-9\.\$])|([A-Z])(?=[A-Z][a-z])|([^\-\$\.0-9])(?=\$?[0-9]+(?:\.[0-9]+)?)|([0-9])(?=[^\.0-9])|([a-z])(?=[A-Z])/g;
var str = "CSVFilesAreCool123B--utTXTFoo12T&XTRules$123.99BAz";
str = str.replace(regex, '$2$3$4$5 ');
// CSV Files Are Cool 123 B ut TXT Foo 12 T XT Rules $123.99 B Az

RegExr

暂无
暂无

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

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