正则表达式解析数字组

时间:2017-09-28 14:44:58

标签: c# regex

我有什么:

1. 25686-47362-04822-08149-48999-28161-15124-63556

2. 25686-47362-04822-08149-48999-28161-15124-6355654534

3. 54354325686-47362-04822-08149-48999-28161-15124-63556

4. 25686-47362-04822-08149-48999-28161-15124-6355654534fds

5. fdsfds54354325686-47362-04822-08149-48999-28161-15124-63556

6. 25686-47362-04822-08149-48999-28161-15124-63556-63556

我期望得到什么

1. 25686-47362-04822-08149-48999-28161-15124-63556

我尝试了最接近([0-9]{5,5}){8}

的内容

我试图避免使用2,3,4,5,6。

4 个答案:

答案 0 :(得分:5)

试试这个

var msgDate = userMessage.createdAt

说明:

  string source = @"25686-47362-04822-08149-48999-28161-15124-63556";

  bool result = Regex.IsMatch(source, "^[0-9]{5}(-[0-9]{5}){7}$");

答案 1 :(得分:1)

我不确定是否有办法要求它重复"重复"分组,但我会这样输入:

/^([0-9]{5}\-[0-9]{5}\-[0-9]{5}\-[0-9]{5}\-[0-9]{5}\-[0-9]{5}\-[0-9]{5}\-[0-9]{5})/

答案 2 :(得分:1)

您可以使用:

^\d+\.\s(\d{5}-?){8}$

它匹配符合条件的整行:一个数字或更多,一个点,一个空格,8个块,5个带连字符的数字。

答案 3 :(得分:0)

您可以使用以下标准限定该行:

<beans>


<!-- SECURITY ENABLED -->
<beans profile="security-enabled">
    <!-- Data  Data Base & LDAP-->      
    <bean id="ldapAuthProvider" class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
        <constructor-arg>
            <bean id="bindAuthenticator" class="org.springframework.security.ldap.authentication.BindAuthenticator">
                <constructor-arg ref="contextSource" />
                <property name="userSearch" ref="userSearch" />
            </bean>
        </constructor-arg>
    </bean>

    <bean id="userSearch"
        class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch">
        <constructor-arg index="0" value="" />
        <constructor-arg index="1" value="(&amp;(cn={0})(estado=activo))" />
        <constructor-arg index="2" ref="contextSource" />
    </bean>


    <bean id="contextSource"
        class="org.springframework.security.ldap.DefaultSpringSecurityContextSource">
        <constructor-arg value="myurl" />
        <property name="userDn" value="myuser" />
        <property name="password" value="mypassword" />
    </bean>

    <security:authentication-manager alias="authenticationManager">
        <security:authentication-provider ref="ldapAuthProvider" />
    </security:authentication-manager>
</beans>

Demo

或者

/^((?:\D|^)\d{5}){8}$/m 

更具体的连字符分隔符。