javascript - 改变我的正则表达式以查看任何非数字字符?

标签 javascript regex

var text1 = "this is %60.94 correct?"
var text2 = "is this %45?"
var text3 = "looks like %45.5/%54.5."
var text4 = "what about 5 or 10 = %22.5.2."

现在我正在使用这个,text.match(/%[^\s\/\,]+/g),但它不能处理更多的边缘情况。

我需要能够停在除第一个 之外的任何非数字字符处。

任何有关如何修改正则表达式来执行此操作的指示都会很棒。这是我想要的每个输出。

text1.match(regex) -> [60.94]
text2.match(regex) -> [45]
text3.match(regex) -> [45.5, 54.5]
text4.match(regex) -> [22.5]

感谢您的帮助。

抱歉,规则:在任何 % 符号之后到任何非数字字符( 的第一个实例除外)。

另外:查找所有实例很重要

最佳答案

正则表达式可以是这样的:

/%(\d+(\.\d+)?)/

Updated DEMO

关于javascript - 改变我的正则表达式以查看任何非数字字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13368887/

相关文章:

java - 在 Java 中使用正则表达式搜索特定行

C# regex 引用重复命名组

javascript - 在 d3.js 中加载 json

javascript - 使用nodejs意外 token 在bash脚本for循环中执行java程序

r - 如何用 R 在字符串中的最后一个斜杠后用 "_"替换空格

regex - Azure-CLI/Powershell 密码要求

python - 在Python中的for循环中匹配字符串

php - 来自mysql的分页数据表,自动刷新

javascript - 使用 Zippopotam.us 的 JSON 结果作为 Google map 坐标

javascript - 尝试使用 React hooks 从 Giphy API 显示 GIF