判断是否是整数或者金额格式
时间: 2023-07-21 08:40:01 浏览: 40
可以通过正则表达式来判断一个字符串是否符合整数或金额格式。以下是示例代码:
```python
import re
def is_integer(s):
# 整数正则表达式
pattern = r'^-?\d+$'
return bool(re.match(pattern, s))
def is_money(s):
# 金额正则表达式
pattern = r'^-?\d+(\.\d{1,2})?$'
return bool(re.match(pattern, s))
```
其中 `is_integer` 函数判断字符串是否符合整数格式, `is_money` 函数判断字符串是否符合金额格式。可以调用这两个函数来判断一个字符串是否符合要求。
相关问题
正则表达式 判断是否是整数或者金额格式
当判断字符串是否符合整数或金额格式时,可以使用正则表达式来实现。以下是示例代码:
```python
import re
# 判断是否是整数格式
def is_integer(s):
pattern = r'^-?\d+$' # 整数的正则表达式,包含正负整数
return bool(re.match(pattern, s))
# 判断是否是金额格式
def is_money(s):
pattern = r'^-?\d+(\.\d{1,2})?$' # 金额的正则表达式,包含正负数和小数点后最多两位的数字
return bool(re.match(pattern, s))
```
在代码中, `re.match()` 函数用于判断字符串是否符合正则表达式的格式,返回一个匹配对象。如果匹配成功,则返回 True,否则返回 False。使用 `bool()` 函数将匹配结果转换为布尔类型。在 `is_integer()` 函数中,使用 `^` 表示匹配字符串的开头,`$` 表示匹配字符串的结尾,`-?` 表示可选负号,`\d+` 表示匹配一或多个数字。在 `is_money()` 函数中,`\.\d{1,2}` 表示匹配小数点后 1 或 2 位数字。
Java 正则表达式 判断是否是整数或者金额格式
当判断字符串是否符合整数或金额格式时,可以使用正则表达式来实现。以下是 Java 示例代码:
```java
import java.util.regex.Pattern;
public class RegexTest {
// 判断是否是整数格式
public static boolean isInteger(String s) {
String pattern = "^-?\\d+$"; // 整数的正则表达式,包含正负整数
return Pattern.matches(pattern, s);
}
// 判断是否是金额格式
public static boolean isMoney(String s) {
String pattern = "^-?\\d+(\\.\\d{1,2})?$"; // 金额的正则表达式,包含正负数和小数点后最多两位的数字
return Pattern.matches(pattern, s);
}
public static void main(String[] args) {
System.out.println(isInteger("-123")); // true
System.out.println(isMoney("-123.45")); // true
}
}
```
在代码中,使用 `Pattern.matches()` 方法判断字符串是否符合正则表达式的格式,返回一个布尔值。在 `isInteger()` 方法中,使用 `^` 表示匹配字符串的开头,`$` 表示匹配字符串的结尾,`-?` 表示可选负号,`\\d+` 表示匹配一或多个数字。在 `isMoney()` 方法中,`\\.\\d{1,2}` 表示匹配小数点后 1 或 2 位数字。注意 Java 中需要使用两个反斜杠来转义正则表达式的特殊字符。