浮点或整数以及空格和单词的正则表达式模式

时间:2017-12-24 15:46:56

标签: regex

浮点数或整数,空格和单词的正则表达式可能是什么?

示例:

  

str =" 12.4 count"

OR

  

str =" 12 count"

OR

  

str ="(12.4计数)"

4 个答案:

答案 0 :(得分:1)

匹配:

  

浮点数或整数和空格以及单词

这可能是一种方法:

\d*\.?\d+ \w+

解释

  • 匹配零个或多个数字\d*
  • 匹配可选点\.?
  • 匹配一个或多个数字\d+
  • 文字空间
  • 匹配任何单词字符一次或多次\w+

答案 1 :(得分:0)

这个正则表达式可行:

25.12.2017 00:00:00 and 29.12.2017 23:59:59
  • ([0-9]+([.][0-9]+)? [a-zA-Z]+) 将匹配任何整数...
  • ... [0-9]+或浮动......
  • ... ([.][0-9]+)?后跟一个空格和一个单词(假设您只想匹配罗马字母中的字符)

答案 2 :(得分:0)

您可以使用以下正则表达式:

 (\d+(\.\d+)? \w+)



var reg = function(str){
  return str.match(/(\d+(\.\d+)? \w+)/g);
}
console.log(reg("12.4 count"));
console.log(reg("12 count"));
console.log(reg("(12.4 count)"));




答案 3 :(得分:0)

试试这个:



var re = /(\d+(\.\d+)?)\s(\w+)/;

var strs = [
"12.4 count",
"12 count",
"(12.4 count)"
]

strs.forEach(
  (str) => {
    var res = re.exec(str);
    console.log('Full Match', res[0]);
    console.log('Number', res[1]);
    console.log('Word', res[3]);
  }
);




这个将为您提供值,但每个字符串只能找到一次。



var re = /(\d+(\.\d+)?)\s(\w+)/g; // Do a global search, more than once per string

var strs = [
"12.4 count. 43.23 mountains.  134 fish.",
"12 count",
"(12.4 count)"
]

strs.forEach(
  (str) => {
    while(true) {
      var res = re.exec(str);
      if (res === null) {
        break;
      }
      console.log('Full Match:', res[0]);
      console.log('Number:', res[1]);
      console.log('Word:', res[3]);
    }
  }
);




即使有多个匹配项,也会找到字符串中的每个匹配项。

/(\d+(\.\d+)?)\s(\w+)/
  

\ d + =一个或多个数字

     

(\ d +)? =匹配a。然后是一个或多个数字,整个事情为零或一次。

     

\ s =空白

     

\ w + =一个或多个Alpha数字

     

括号用于创建组,以便您可以根据需要提取各个部分