0

次のようなテキストがあります。

CN=BillNameOne,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com
CN=MaryNameTwo,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com
CN=BillName,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com
CN=MaryName,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com

正規表現を使用して Java の文字列からユーザー名を抽出するにはどうすればよいですか。そして、Bill で始まるユーザー名が必要です。

正規表現は何ですか?これでユーザー名を抽出できますが、Bill で始まるユーザー名を選択するにはどうすればよいですか?

"CN=(.*?),"
4

3 に答える 3

0

どうですか

^CN=(Bill[^,]++)

例えば

final String[] strings = {
    "CN=BillNameOne,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com",
    "CN=MaryNameTwo,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com",
    "CN=BillName,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com",
    "CN=MaryName,OU=departmentOne,OU=departmentTwo,DC=domain,DC=com",};
final Pattern pattern = Pattern.compile("^CN=(Bill[^,]++)");
for (final String string : strings) {
    final Matcher matcher = pattern.matcher(string);
    if(matcher.find()) {
        System.out.println(matcher.group(1));
    }
}

出力:

BillNameOne
BillName
于 2013-05-26T16:58:18.247 に答える