当前位置: 首页 > 知识库问答 >
问题:

PreviewTextInput中的Regex:只有0.0到1.0之间的小数

锺离声
2023-03-14

我希望有一个regex,它只允许文本框中的数字在0.0和1.0之间。

但它应该在方法PreviewTextInput中(C#,WPF项目)

Regex regex = new Regex(@"^0|0.0|0\.[0-9]*|1\.0|1$");
Regex regex = new Regex("^[.][0-9]+$|^[0-1.]*[.,]{0,1}[0-9]*$");
private void tb_PreviewTextInput(object sender, TextCompositionEventArgs e)
    {
        Regex regex = new Regex("^[.][0-9]+$|^[0-1.]*[.,]{0,1}[0-9]*$");
        e.Handled = !regex.IsMatch((sender as TextBox).Text.Insert((sender as TextBox).SelectionStart, e.Text));
    }

我的0-1之间的小数方法(不起作用):

        private void tb_Surface_PreviewTextInput(object sender, TextCompositionEventArgs e)
    {
        Regex regex = new Regex(@"^(0?\.[0-9]+|1\.0)$");
        e.Handled = !regex.IsMatch(e.Text);
       // e.Handled = !regex.IsMatch((sender as TextBox).Text.Insert((sender as TextBox).SelectionStart, e.Text));

    }

共有1个答案

施茂
2023-03-14

您可以试试这个regex。

@"^(?:0?\.[0-9]+|1\.0)$"
 类似资料:
  • 问题内容: 我想明白之间的差别和。 根据,(据我了解),即使找到了所要查找的内容,它也会搜索整个字符串,并在找到所要查找的内容时停止。 如果这个假设是正确的,我看不到,只要你想使用的,而不是,除非你想指望它找到匹配的数量。 在我看来,类应该具有而不是作为内置方法。 总结一下: 我的假设正确吗? 什么时候代替有用? 问题答案: 尝试将表达式与整个字符串匹配,并在模式的开头和结尾隐式添加a ,这意味着

  • 问题内容: Java 正则表达式中match()和find()之间的区别? 问题答案: 尝试将表达式与整个字符串匹配,并在模式的开头和结尾隐式添加 ,这意味着它将不查找子字符串。因此,此代码的输出: 是的子字符串,因此该方法输出。仅“看到” 与“不相同” ,因此输出。

  • 在我的脚本中,我提取了一个excel,在一个名为“Time”的列中有一个dtype对象,在该列中有一个类似于“14:00:00”的小时,我想将该列转换为_datetime,但是当我这样做时: 我把年、月和日加在一起,我不希望发生这种情况,我还想把这列作为日期时间,这样我就可以减去另一个时间,得到秒。我如何将其传递到只有小时、分钟和秒的datetime?

  • 问题内容: 在下一个稳定的AngularJS发行时,我将应用程序从 1.0.8 迁移到 1.2 。 在AngularJS 1.0.8中 ,可以为诸如的指令设置隔离范围。然后,该指令将使用其自己的功能而不是控制器的功能。 Java脚本 在AngularJS 1.2中, 此行为不再起作用。单击该按钮将立即激活控制器的功能。 参见以下jsFiddle比较: 角1.0.8 角1.2.0 到底发生了什么变化

  • 我想使用编写Regex表达式,以找到第一个没有包裹在单引号或双引号周围的字符。 我有下面的字符串我想找到的唯一的是null后面的那个。 我不确定如何用正则表达式来表示“notbetween”。这是我试过的 但这符合我的期望。 我如何才能正确地找到没有括在引号周围的右括号? 使用C#应返回第一个匹配项。 这里更新了一些我希望能够评估的文本 (“some()test 1”,“some text)”,1

  • include <stdio.h> include <stdlib.h> include <string.h> define MEDICINE_FILE "medicine.txt" //药品文件名 typedef struct medicine { } medicine; struct med { } med; //与药品操作相关函数 void showMenu(); //打印菜单 void r