将正则表达式与 p:keyFilter 一起使用

2024-02-15

我有一个p:inputMask with a p:keyFilter来匹配时间HH:mm图案如下:

<p:inputMask mask="99:99" ...>
     <p:keyFilter regEx="([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]"/>
</p:inputMask>

但它不起作用,它接受来自的所有值00:00 to 99:99.

我该如何解决这个问题?


p:keyFilter versus f:validateRegexregEx versus inputRegEx

p:keyFilterregEx属性用于过滤字符(在每个击键上),它不允许您验证表达式(在完整的输入值上)。如果您想验证输入是否与正则表达式匹配,请使用inputRegEx属性或f:validateRegex.

所以,在你的情况下你可以使用:

<p:inputXxx ...>
    <f:validateRegex pattern="([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]"/>
</p:inputXxx>

请注意p:keyFilter需要 JavaScript 正则表达式 while, whilef:validateRegex需要 Java 正则表达式。和,p:keyFilter inputRegEx在按键时检查,同时f:validateRegex当处理该字段时执行。正确的使用方法p:keyFilter将会:

<p:inputXxx ...>
    <p:keyFilter inputRegEx="/[0-9:]/"/>
</p:inputXxx>

但这仍然会允许无效输入。

所以,在简历中:

Property p:keyFilter inputRegEx="..." f:validateRegex pattern="..."
Regular expression type JavaScript Java
Executed when Key up JavaScript event is triggered Component is processed

这适用于所有文本输入组件(例如p:inputText),因此不仅对p:inputMask您正在使用)。

也可以看看:

  • https://primefaces.github.io/primefaces/10_0_0/#/components/keyfilter https://primefaces.github.io/primefaces/10_0_0/#/components/keyfilter
  • 将 Javascript 正则表达式转换为 Java 语法 https://stackoverflow.com/questions/8754444/convert-javascript-regular-expression-to-java-syntax/52925590

PrimeFaces 6 之前

注意p:keyFilter从 6.0 开始可用。对于旧版本,您需要 PrimeFaces Extensionspe:keyFilter。请注意,6.0 之前的 PFE 版本与 PF 版本不一致。

对于完全不同的东西

你可以简单地使用p:datePicker,现在只能用于输入时间(小时和分钟):

<p:datePicker pattern="HH:mm" .../>

或者你可以看看pe:timePicker http://www.primefaces.org/showcase-ext/sections/timePicker/basicUsage.jsf.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将正则表达式与 p:keyFilter 一起使用 的相关文章

  • 正则表达式:如何匹配所有大于 49 的数字?

    我对正则表达式有点陌生 正在为正则表达式的数量字段编写验证need要使用的 如何匹配所有大于或等于 50 的数字 I tried 5 9 0 9 但这只匹配 50 99 有没有一种简单的方法来匹配所有可能大于 49 的数字 仅使用整数 事实
  • 正则表达式会减慢程序速度

    我正在尝试创建一个程序来解析游戏聊天日志中的数据 到目前为止 我已经设法让程序运行并解析我想要的数据 但我的问题是程序变得越来越慢 目前解析 10MB 文本文件需要 5 秒 我注意到如果我将 RegexOptions Compiled 添加
  • Java:正则表达式,其中每个字符出现0-1次

    Problem 匹配正则表达式的每个字符最多出现一次的单词 该单词必须具有一定的大小 例如 2 5 单词中必须有一个特定的字符 比方说字符 e 我有什么 word matches abcde 2 5 这将匹配字符 a b c d 和 e 出
  • 尝试在 Linux 上使用 Clang++ 编译 c++11 正则表达式教程时出错

    我正在努力追随本教程 http solarianprogrammer com 2011 10 12 cpp 11 regex tutorial 关于 C 11 中的正则表达式 当我尝试编译这个小代码示例时 我收到这些错误 clang std
  • 正则表达式删除块注释也删除 * 选择器

    我正在尝试使用 bash 从 css 文件中删除所有块注释 我有以下 sed 命令的正则表达式 sed r s w s w d 这可以很好地去除块注释 例如 This is a comment this is another comment
  • RewriteCond REQUEST_URI - ^ 未按预期工作

    我正在 codeigniter 中构建一个网站 我在 htaccess 文件中有一系列重写条件和规则 第一组规则根据 uri 的第一段打开或关闭 SSL 然后它再次循环 如果找到匹配项 则适当地重定向页面 如果没有匹配项 并且 uri 不以
  • UcanaccessSQLException:UCAExc:::3.0.1 表达式的数据类型不是布尔值

    我有一张如下图所示的表格 我需要获取其库尔德语单词包含的所有英语单词 r 所以我不能使用 select English from Table1 where Kurdish like 因为它还接受另一个单词中的子字符串 例如 当我尝试在查询中
  • 正则表达式不等于字符串

    我用正则表达式用头撞墙 我正在尝试定义一个表达式 该表达式完全排除此文本 System 不区分大小写 但可以包含 系统 这个词提供的不仅仅是这个 例子 系统 无效 系统 无效 系统 无效 系统 无效 asd 系统 有效 asd 系统 asd
  • Javascript 正则表达式来匹配正则表达式

    我正在研究一个特殊的正则表达式来匹配 javascript 正则表达式 现在我有这个正则表达式工作 i g m 例如 foo match i g m gt foo foo undefined foo i match i g m gt foo
  • Java中字符串中特殊字符的替换

    Java中如何替换字符串 E g String a adf sdf 如何替换和避免特殊字符 您可以删除除此之外的所有字符可打印的 ASCII 范围 http en wikipedia org wiki ASCII ASCII printab
  • 从支持 bean 更新 PrimeFaces 数据表

    我在 bean 中使用 Schedule Timer 当员工注册从指纹设备获取数据时 它会更新变量 当 bean 中的变量更新时 我需要从支持 bean 更新 jsf 中的组件 我尝试使用 primefaces poll 组件 但它每次都会
  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • shell中如何分割字符串

    我有一个变量作为 string ABC400p2q4 我怎样才能分开ABC400 and p2q4 我需要将它分成两个变量 结果我得到 echo var1 ABC400 echo var2 p2q4 可以用任何字母字符代替 ABC 可以用任
  • 如何仅删除单括号并保留配对的括号

    你好 我亲爱的老师 R 用户朋友们 我最近开始认真学习正则表达式 最近我遇到了一种情况 我们只想保留配对括号 并省略未配对的 这是我的样本数据 structure list t1 c Book Pg 1 Website Online Jou
  • 正则表达式:删除 xml 的空元素标签

    我想将所有自封闭元素替换为长语法 因为我的网络浏览器在它们上绊倒 Example becomes 我正在使用 python 风格的正则表达式 这些解决方案都不会容纳像 foo gt 这样的属性 尝试 s lt w gt s gt lt 1
  • 将大写 URL 重定向为小写(*** 除外) - htaccess

    我正在尝试将大写 URL 重定向为小写 但有点噩梦 主要是我的 htaccess知识缺乏 目前我有
  • Perl 非贪婪

    我遇到非贪婪正则表达式 regex 的问题 我已经看到有关于非贪婪正则表达式的问题 但它们没有回答我的问题 Problem 我正在尝试匹配 lol 锚点的 href Note 我知道这可以通过 Perl HTML 解析模块来完成 我的问题是
  • .htaccess 如果 URL 错误,请执行某些操作

    我正在做我的个人CMS http en wikipedia org wiki Content management system 我想在其中使用很酷 友好 的 URL 这是我的 htaccess 文件代码 RewriteEngine on
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional
  • Python 正则表达式中的 \B+ 与 [\B]+ 与 [^\b]+

    我在回答 SO 问题时遇到了一个我不明白的问题 我创建了一个简化的示例来说明该问题 场景 我正在测试两个标记 不是随机的英语单词 在字符串中至少相距一定距离 在这个例子中 我们有一个动物列表 我们要确保在羊和狼之间至少还有其他三种动物 否则

随机推荐

  • 为什么 chrome 不运行这个 javascript

    当我在 Chrome 版本 2 中运行它时 它不会返回字符串 但它可以在 Firefox 版本 3 中运行 为什么是这样
  • Android - 集成 ffmpeg 和 android-ndk-r9c

    我看过很多关于 FFmpeg 以及在 Android 中使用 FFmpeg 的帖子 但我发现这些帖子大多数都是针对旧版本的 FFmpeg 或 Android NDK 我能够得到结果https github com mconf android
  • 使用 jquery 将内容包装在 div 中

    我试图将内容包装在 div 中 但问题是 html 页面不可编辑 所以我尝试其他方法 使用 jQuery 将所有内容包装在 adiv以下是html结构 document ready function hr before div class
  • 我可以在 oncreate 方法之外使用 setContentView 吗?

    我看到很多人告诉你可以在 oncreate 方法之外设置 setContentView 但我没有在任何地方找到示例 现在 当我尝试使用 setContentView 时 我的应用程序崩溃了 这是我的源代码 AlarmActivity jav
  • 如何在 Django 中使用带有 https 的登录重定向?

    我正在使用 django braces LoginRequiredMixin对于我的观点之一 基本上 这会添加一个查询字符串 next my desired url to http example com login 问题是 我在我的网站上
  • 将准备好的语句的结果存储为mysql中的表?

    是否可以将准备好的表的结果存储在mysql中 我的用例是 我根据源表的某些条件创建两个变量 然后根据此条件获取随机行 由于我有 10 个这样的表 我是否应该第一个加入它们 然后根据 总体 传递 过滤标准进行随机化 另请参阅下面的 total
  • 使用 Python 进行迭代时出现 StaleElementException

    我正在尝试为亚马逊结果创建一个基本的网络抓取工具 当我迭代结果时 有时会到达结果的第 5 页 有时仅第 2 页 然后是StaleElementException被抛出 当我在抛出异常后查看浏览器时 我可以看到驱动程序 页面没有向下滚动到页码
  • Xcode 4 中没有外部库的符号/源

    我的应用程序没有看到库的源代码 如果我在库方法上 跳转到定义 XCode 会将我带到 h 文件 但说没有 cpp 对应项 When debugging I see no source code and most of the call st
  • 在 NetLogo 中控制海龟的生命

    在一个项目中 我正在 NetLogo 中开发一个模拟来处理狗和人类的狂犬病 我有一些乌龟 人类和狗 可以接种疫苗 也可以不接种 一开始我创造了一只患有狂犬病的狗 根据疾病的阶段 1或2 它有一定的概率将疾病传播给其他狗 最后 狗可能会因瘫痪
  • 如何在android中使用可见和不可见的按钮

    我想让一个按钮不可见 当我单击另一个按钮时 不可见的按钮将变得可见 然后执行onClick 对可见按钮执行的操作 What onClick 我可以在可见按钮上使用的操作 我使用了如下所示的方法 donebutton Button findV
  • Javascript sort() 不能正确按字母顺序排列

    var ccArray ccArray input checkbox name multiselect ddlCC sort 我可以说我得到了数组中所需的值 但是在 sort 运行之后 数组顺序发生了变化 但不是按字母顺序排列 我得到诸如
  • .NET 多线程:锁定时间过长时用日志锁定对象

    在系统中 我们有通过特定参数锁定对象的方法 作为实现 我们有带有 Enter 方法的 LockManager 该方法接收锁的密钥 检查内部字典中是否存在锁对象 如果不存在 则创建它然后锁定 我想要做的是为特定锁定设置 X 预期时间 如果一个
  • 将 SVN 存储库的一部分复制到新存储库?

    目前 我有一个大型 SVN 存储库 其中包含许多不同的项目 如下所示 Project1 trunk tags branches Project2 trunk tags branches Project3 etc 但是 我现在尝试将其分解为单
  • 如何在python中同时读取和处理多个文件

    我有多个文件 我想同时读取它们 从每一行中提取一个数字并计算平均值 对于少量文件 我使用 itertools 模块中的 izip 来完成此操作 这是我的代码 from itertools import izip import math g
  • FloatingActionButton 隐藏在列表滚动上

    我正在使用FloatingActionButton来自android support design widget包裹
  • 如何使 jQuery 插件函数可调用以供独立使用,而不对集合进行操作

    我读了插件创作的 jquery 文档 http docs jquery com Plugins Authoring我对此很熟悉 但是 给出的示例始终对一组先前匹配的元素进行操作 我想创建一个可以同时执行这两项操作的函数 example us
  • QGraphicsScene 子类忽略鼠标按下事件

    我有一个 UI 和一个实现 mousePressEvent 的 QGraphicsScene 子类 GraphicsScene 但是鼠标单击被忽略 ui gt setupUi this scene new GraphicsScene thi
  • EF 代码首先批量插入

    我需要使用 EF Code First 插入大约 2500 行 我原来的代码看起来像这样 foreach var item in listOfItemsToBeAdded biz logic context MyStuff Add i 这花
  • React Material-UI 列搜索选择

    我目前正在使用 Material UI 数据表 并且有一个与此类似的搜索例程代码沙盒示例 https codesandbox io s material ui table search demo x3viu file demo tsx 这只
  • 将正则表达式与 p:keyFilter 一起使用

    我有一个p inputMask with a p keyFilter来匹配时间HH mm图案如下