繁体   English   中英

Java 中的正则表达式,输入字母数字后跟正斜杠,然后再输入字母数字

Regular expression in Java that takes as input alphanumeric followed by forward slash and then again alphanumeric

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我需要一个正则表达式,它将输入字母数字,然后是正斜杠,然后是字母数字。 我如何在 Java 中为此编写正则表达式?

示例如下:

adc9/fer4

我尝试使用正则表达式如下:

String s = abc9/ferg5;
String pattern="^[a-zA-Z0-9_]+/[a-zA-z0-9_]*$";
if(s.matches(pattern))
{
    return true;
}

但问题是接受所有形式的 abc9/ 字符串而不检查正斜杠。

5 个回复

参考: http : //download.oracle.com/javase/1.4.2/docs/api/java/util/regex/Pattern.html

Pattern p = Pattern.compile("[a-z\\d]+/[a-z\\d]+", CASE_INSENSITIVE);

希望这可以帮助。

我会用:

String raw = "adc9/fer4";
String part1 = raw.replaceAll("([a-zA-Z0-9]+)/[a-zA-Z0-9]+","$1");
String part2 = raw.replaceAll("[a-zA-Z0-9]+/([a-zA-Z0-9]+)","$1");

[a-zA-Z0-9] 允许任何字母数字字符串 + 是一个或多个 ([a-zA-Z0-9]+) 表示存储组的值 $1 表示召回第一组

这是模拟\\w含义所需的 Java 代码:

public final static String
    identifier_chars = "\\pL"          /* all Letters      */
                     + "\\pM"          /* all Marks        */
                     + "\\p{Nd}"       /* Decimal Number   */
                     + "\\p{Nl}"       /* Letter Number    */
                     + "\\p{Pc}"       /* Connector Punctuation           */
                     + "["             /*    or else chars which are both */
                     +     "\\p{InEnclosedAlphanumerics}"
                     +   "&&"          /*    and also      */
                     +     "\\p{So}"   /* Other Symbol     */
                     + "]";

public final static String
identifier_charclass     = "["  + identifier_chars + "]";       /* \w */

public final static String
not_identifier_charclass = "[^" + identifier_chars + "]";       /* \W */

现在使用identifier_charclass的模式,无论你想一个\\w字符,并not_identifier_charclass无论你想一个\\W字符。 它并不完全符合标准,但它比 Java 对这些的破碎定义要好得多。

星号应该是一个加号。 在正则表达式中,星号表示 0 或更多; plus 表示 1 个或多个。 您在斜线之前的部分之后使用了加号。 您还应该对斜线后的部分使用加号。

我认为可以执行我认为您想要的最短 Java 正则表达式是"^\\\\w+/\\\\w+$"

2 正则表达式正斜杠字母/数字

是否可以解析字符串,并且在/的两边都有字母的地方,请删除/并插入空格,但不要对数字进行处理。 因此,“黑/蓝绿色”将是“黑蓝绿色”,当然还有3/4个停留时间。 我不知道如何开始,但确实知道我做不到。我需要在斜杠之前指出单词,在斜杠之后指出单词,但是在斜杠之前不能有空格。 ...

3 正则表达式 - 匹配一定数量的数字后跟字母

我想匹配一个字符串,它是1-4个数字,后跟一个特定的字母。 例如,如果我的字符串是 '这种橡胶的硬度是90a,另一种的硬度是120a' 我想抓住'90a'和'120a'的值。 我试过^[0-9]{0,4}[a]$和^([0-9]{0,4})[g]$ 奖励积分, ...

4 查找数字后跟字母的正则表达式[关闭]

我是regex的新手,所以为愚蠢的问题致歉;) 如何识别字符串中包含数字和字母? 例如,在此地址"Flat 3a Butterfly Street"我需要标识包含3a字符串。 我还需要确定字符串是否包含带有"-"单词。 ...

5 正则表达式:在数字后跟字母时添加空格

在一组数字之后,我想在字符串中添加一个空格。 例如,以下字符串应在数字后添加一个空格: 我一直在尝试按以下方式在 Python 中处理正则表达式: 使用前面的代码,我得到了影响其他正则表达式转换的不需要的空格: 如何在不添加不需要的空格的情况下在字符串中添加空格? ...

6 JavaScript正则表达式匹配数字后跟字母

我是一个总的正则表达式菜鸟,不幸的是可以找到一个正则表达式来满足我的需要。 我需要一个正则表达式,当一个数字后跟一个字母时,它将返回所有字符。 例如:我有一个字符串数组[".5a", "2c#", "1e", "2f", "1.5g"]我想得到以下数组["a", "c#", "e", ...

7 Java正则表达式的数字后跟z ^ 3?

我想检查一个字符串是否匹配形式az ^ 3,其中a是任何整数。 我尝试了以下方法: 这真让我抓狂。 :-(我已经尝试了所有可能的regex教程并搜索了示例,但我什至无法提出解决方案。 如果有人可以帮助我,我将不胜感激。 ...

9 Java正则表达式中数字后不跟变量(字母)

我没有找到问题的答案,所以希望我们可以在这里解决! 假设我有以下字符串: 我想定义一个可以查找所有常量而不是系数的正则表达式。 所以我只想找到1,-451和-0.7855。 到目前为止,我可以找到系数,但前提是它们不在字符串末尾,因为我的正则表达式取决于它们后面没有字母,然后是空格 ...

10 任何字母或数字后加括号的正则表达式

显然我需要一些有关正则表达式的帮助。 我试图找到带括号的任何字母或数字。 l) 9) R) 。 我尝试了几件事。 我的想法是“以任何字母或数字开头,后接1个括号”。 所以我尝试了这个: 显然它没有用。 ...

2015-03-14 22:48:09 2 168   regex
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM