正则表达式——WPF输入控件TextBox 限定输入特定字符,wpftextbox


原文:正则表达式——WPF输入控件TextBox 限定输入特定字符

概念:

正则表达式是对字符串操作的一种逻辑公式,

就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,

这个“规则字符串”用来表达对字符串的一种过滤逻辑。

 

目的:

给定一个正则表达式和另一个字符串,我们可以达到如下的目的: 1. 验证给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”); 2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。   应用示例: 1. WPF 输入控件 TextBox 限定输入特定字符;   步骤一:禁用输入法   <Window xmlns:input="clr-namespace:System.Windows.Input;assembly=PresentationCore">

    <TextBox input:InputMethod.IsInputMethodEnabled="False"/>

  </Window>

  步骤二:监测 TextBox 的 PreviewTextInput事件            private void TextBox_PreviewTextInput(object sender, System.Windows.Input.TextCompositionEventArgs e)
        {   
            Regex re = new Regex("[^A-F0-9]");  // 只允许输入大写字母A~F和数字0~9

            e.Handled = re.IsMatch(e.Text);
        }   注:e.Text为当前输入的单个字符,当该字符与正则表达式 re 匹配时 e.Handled = true,TextBox的TextInput事件被中断(输入终止)。

 

 

 

 

 

相关内容