C# c正则表达式匹配

C# c正则表达式匹配,c#,regex,C#,Regex,我有regexp: \[IN\](\d+)\[/IN\] 它适用于: ...[IN]34[/IN]... ...[IN]1[/IN]... ...[IN]12[/IN]... etc 但它对小数不太起作用,即: 我怎样才能使它也与这些匹配呢 谢谢 从我的头顶上看,我认为应该是这样的: [IN](\d+\.?\d*)[/IN] 编辑:测试和更正版本: \[IN\](\d+(\.\d+)?)\[\/IN\] 从我的头脑来看,我认为应该是这样的: [IN](\d+\.?\d*)[/IN] 编

我有regexp:

\[IN\](\d+)\[/IN\]
它适用于:

...[IN]34[/IN]...
...[IN]1[/IN]...
...[IN]12[/IN]...
etc
但它对小数不太起作用,即:

我怎样才能使它也与这些匹配呢


谢谢

从我的头顶上看,我认为应该是这样的:

[IN](\d+\.?\d*)[/IN]
编辑:测试和更正版本:

\[IN\](\d+(\.\d+)?)\[\/IN\]

从我的头脑来看,我认为应该是这样的:

[IN](\d+\.?\d*)[/IN]
编辑:测试和更正版本:

\[IN\](\d+(\.\d+)?)\[\/IN\]

它不检查是否有效,浮点值有一个小数点:

([\d.]+)

它不检查是否有效,浮点值有一个小数点:

([\d.]+)
像这样的

[IN](\d+|\d+\.\d+)?[/IN]
如果你有一个点,这可以确保你在点后有一个数字。

类似这样的东西

[IN](\d+|\d+\.\d+)?[/IN]
如果有点,这可以确保在点后有一个数字。

试试这个-

\[IN\]\d+(\.\d+)?\[/IN\]
试试这个-

\[IN\]\d+(\.\d+)?\[/IN\]
是否也有指数1.4E-3?是否也有指数1.4E-3?