javascript - 我用于查找多个空格的正则表达式如何不匹配换行符?

标签 javascript regex replace

我在 #q keyup 事件上运行这个正则表达式以避免字符串中出现额外的空格。

$('#q').val($('#q').val().replace(/\s+/g,' '));

问题是它还删除了所有新行。如何删除多余的空格但保持换行不变?

最佳答案

问题是 \s 代表所有 空格,包括换行符。如果你只想要空格,你可以有一个文字空间:

$('#q').val($('#q').val().replace(/ +/g,' '));

如果你想要空格和制表符,你可以使用字符类来代替:

$('#q').val($('#q').val().replace(/[\t ]+/g,' '));

关于javascript - 我用于查找多个空格的正则表达式如何不匹配换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8484575/

相关文章:

javascript - 如何使用 JSON 将 C# 对象转换为 Javascript 数组数组?

python - regexp_tokenize 和阿拉伯文本

C# - 添加字符串并替换为新字符串

mysql - 如何使用 SQL 从格式化的字母数字字符串中提取第一个和第二个数字?

javascript - Chrome 用户代理不显示脚本 - CSS 修复?

javascript - 有没有办法在 Canvas 中绘制损坏的图像?

regex - 如何计算 sumologic 中正则表达式匹配随时间的出现次数?

php - 将短语与格式匹配的 HTML 搜索

javascript - Facebook 共享对话框打开空白弹出窗口 - 但可以重新加载吗?

python - pandas 应用正则表达式替换值