正则表达式提取正负的浮点数
时间: 2023-07-30 18:12:26 浏览: 125
要提取正负的浮点数,可以使用以下正则表达式:
```python
import re
text = "这是一个正负浮点数:-3.14和2.7"
pattern = r"-?\d+\.\d+"
result = re.findall(pattern, text)
print(result)
```
这个正则表达式的含义是:`-?`匹配可选的负号,`\d+`匹配一个或多个数字,`\.`匹配小数点,再加上`\d+`匹配一个或多个数字。
输出结果为:`['-3.14', '2.7']`,即成功提取出了正负的浮点数。
相关问题
Java 正则表达式匹配正浮点数
以下是一个Java正则表达式匹配正浮点数的例子:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
String regex = "^\\d+(\\.\\d+)?$";
String input = "3.14";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
System.out.println("匹配成功");
} else {
System.out.println("匹配失败");
}
}
}
```
这个例子中,我们使用了正则表达式`^\d+(\.\d+)?$`来匹配正浮点数。这个正则表达式的含义是:以一个或多个数字开头,后面可以跟一个小数点和一个或多个数字,整个部分是可选的。如果输入字符串与正则表达式匹配,则输出"匹配成功",否则输出"匹配失败"。
正则表达式控制正负浮点数符合规范
可以使用以下正则表达式来控制正负浮点数符合规范:
```(-)?(\d+)(\.(\d+))?```
其中,第一个括号内的“-”表示可选的负号,第二个括号内的“\d+”表示至少一位数字,第三个括号内的“\.(\d+)”表示小数点后面跟着至少一位数字。这个正则表达式可以匹配如下的字符串:
- 1.23
- -4.56
- 789.0
- -0.123
如果需要限制小数点后的位数,可以将“(\d+)”改成“(\d{1,2})”(表示小数点后最多两位数字)或者“(\d{2})”(表示小数点后必须有两位数字)。