java - 在没有正则表达式的情况下在段的开头和结尾测试 'noise'

标签 java regex string match

我正在编写以字符串形式接收数据段的代码。该字符串的大小不同,但始终以相同的字符开头和结尾( start: '<s-' end: '-e>' )。我想防止用户在段开始和结束之前输入无效字符时出错。例如

"fdslkjds<s-hello-e>"
"<s-there-e>dfsad"
"eiend<s-john-e>dfafsd"

我知道这可以通过导入正则表达式库(模式和匹配)来完成。但我想在不使用这些库的情况下尝试这一点。还有其他方法吗?我一直在查找 String 库,但找不到我需要的确切方法。

最佳答案

我建议您看一下StringsstartsWith()endsWith()方法。

我还建议您自己编写代码,但如果您不想为此烦恼,这里有一些应该可以工作的代码:

String input = [your code here]
while(!input.startsWith("<s-") || !input.endsWith("-e>"))
{
    System.out.println("Error! Invalid input! Please try again:");
    input = [your code here]
}

关于java - 在没有正则表达式的情况下在段的开头和结尾测试 'noise',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20494608/

相关文章:

用于生成 ConcurrentModificationException 的 Java 示例代码

java - 使用 Kubernetes 的 java-client 创建 CRD

Javascript Pangram 正则表达式

java - 用java编写正则表达式

xcode - 无法将类型 'NSData' 的值转换为预期的参数类型 'String'

java - 我如何读取文件夹并在java中显示内容。

java - Circle 不会在 JavaFX 中移动位置

java - 除特定情况外如何匹配单个字符

python - Django,检测变量是否为数字

php - 替换两个字母之间的连字符,但不替换两个数字之间的连字符 (PHP)