Java检查字符串只允许逗号作为特殊字符

标签 java

如何检查以确保字符串可以包含的唯一特殊字符是逗号?

testString = "123,34565,222"  //OK

testString =  "123,123.123." //Fail

最佳答案

基于@Simeon 正则表达式的完整工作示例。这会重用单个 Matcher 对象,如果需要频繁进行检查,建议使用该对象。

import  java.util.regex.Pattern;
import  java.util.regex.Matcher;
public class OnlyLettersDigitsCommas  {

   //"": Dummy search string, to reuse matcher
   private static final Matcher lettersCommasMtchr = Pattern.
      compile("^[a-zA-Z0-9,]+$").matcher("");

   public static final boolean isOnlyLettersDigitsCommas(String to_test)  {
      return  lettersCommasMtchr.reset(to_test).matches();
   }

   public static final void main(String[] ignored)  {
      System.out.println(isOnlyLettersDigitsCommas("123,34565,222"));
      System.out.println(isOnlyLettersDigitsCommas("123,123.123."));
   }
}

输出:

[C:\java_code\]java OnlyLettersDigitsCommas
true
false

关于Java检查字符串只允许逗号作为特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22813367/

相关文章:

java - weblogic springframework TypeMismatchException 转换失败

java - 如何在 Servlet 中使用 "application"对象?

java - 如何绕过 magnolia cms 中的过滤器链?

java - Spring中的Websocket身份验证和授权

java - 如何在没有数组的情况下使用 Java 中的 txt 文件阅读器来生成随机短语生成器

java - Maven-compiler-plugin:3.3: testCompile (default-testCompile) 编译失败 Attribute$Error 无法转换为 Attribute$Class

java - 如何在 ExpandableListView 中显示 SQLite 查询的详细信息?

java - 从循环打印输出中删除最后一个逗号 JAVA

Java 递归求和

java - 使用 DBCP 配置 Tomcat