【问题标题】:Java Regular expression - Pattern matching on a pipe-delimited stringJava 正则表达式 - 管道分隔字符串上的模式匹配
【发布时间】:2021-05-20 10:13:36
【问题描述】:

这是非常基本的,但我不确定我缺少什么。我正在尝试对管道分隔的字符串进行模式匹配,以确保我可以准确地处理它(检查前置条件)。

输入字符串的格式为: 图像|{高度}|{宽度}|{纵横比} 例子: 图片|1080|1920|16x9

我正在尝试使用正则表达式验证字符串是否采用这种格式:

IMAGE\\|[0-9]?\\|[0-9]?\\|[0-9]?x[0-9]?"

但是:

String pattern = "IMAGE\\|[0-9]?\\|[0-9]?\\|[0-9]?x[0-9]?";
System.out.println("IMAGE|1080|1920|16x9".matches(pattern));

返回假。我错过了什么?

【问题讨论】:

    标签: java regex


    【解决方案1】:

    我相信您的意思是使用+ 表示一个或多个位置,您使用? 表示0 或1 个。

    【讨论】:

    • 谢谢,就是这样。叹!非常基本,但需要第二双眼睛。干杯。
    • 不客气,@user1452030 - 很高兴为您提供帮助,感谢您确认修复有效。请接受我的回答?
    • 完成。当时无法接受它,因为您解决它的速度比 StackOverflow 处理的速度快;)
    • lol 太迷人了!很高兴知道这可能发生 - 谢谢。
    猜你喜欢
    • 2023-03-15
    • 2021-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多