使用正则表达式匹配C#中的整数

时间:2019-03-04 13:00:49

标签: c# regex

我希望正则表达式匹配“ 1”,“ 15000”和“ 15000”之类的字符串。为整数,但不匹配“ 15000.0”

我尝试过:

[0-9]+(\\.|[0-9]+)?

但失败了

如何用C#编写此正则表达式

3 个答案:

答案 0 :(得分:3)

要验证int,我不会使用RegEx。一方面,RegEx相当昂贵,另一方面,很难验证所有有效整数(负值> int.MaxValue< int.MinValue

怎么样

string input = "1500.";
int result;
bool isValid = int.TryParse(input.TrimEnd('.'), out result);

答案 1 :(得分:3)

            Regex regex = new Regex("^\\d+\\.?$");
            Match match = regex.Match("10000");
            if (match.Success)
            {
                Console.WriteLine("MATCH VALUE: " + match.Value);
            }

答案 2 :(得分:0)

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<table>
<tr>
 
        <td class="action"><a href="#" id="a318d5" class="remove_cart"><i class="fa fa-times" aria-hidden="true"></i></a></td>
                                    <td class="cart_product_img">
                <a href="#">Image</a>
                                    </td>
                                    <td class="cart_product_desc">
                                        <h5>Product</h5>
                                    </td>
                                    <td>
                                        <span> M  </span>
                                    </td>
                                    <td class="price"><span>$320</span></td>
                                    <td class="qty">
                                        <div class="quantity">
                                            <input type="number" class="qty-text" step="1" min="1" max="1" name="quantity" value=3>
                                        </div>
                                        <i class="fa fa-caret-down downarr"></i>
                                    </td>
                                    <td class="total_price"><span>960</span></td>
                                </tr>
</table>

<button class="col-xs-12 qButton">select</button>

https://regex101.com/r/E385Du/1

^\d+\.?$ :1个-N位数字。
d+:用斜杠将点隔开,并用问号表示0或1。

\.?周围指定起点和终点。为了避免匹配包含十进制的任何字符串