Tag: expression式

如何在Java中为正则expression式转义文本

Java是否有一种内置的方式来转义任意文本,以便它可以包含在正则expression式中? 例如,如果我的用户input“$ 5”,我希望在input结束后确切地匹配而不是“5”。

Java正则expression式中\ w和\ b的Unicode等价物?

许多现代正则expression式实现将\w字符类速记解释为“任何字母,数字或连接标点符号”(通常是:下划线)。 这样,像\w+这样的正则expression式就可以匹配hello , élève , GOÄ_432或gefräßig等词语。 不幸的是,Java不。 在Java中, \w仅限于[A-Za-z0-9_] 。 这使得上面提到的那些匹配词难以解决,还有其他一些问题。 它也似乎是\b字分隔符匹配的地方,它不应该。 在Java中,类似.NET的,支持Unicode的\w或\b的正确等价物是什么? 哪些其他快捷方式需要“重写”,使他们的Unicode感知?

从MySQL中的分层数据生成基于深度的树(无CTE)

嗨很多天,我一直在MySQL的这个问题,但我无法弄清楚。 你们有没有build议? 基本上,我有一个类别表,其中包括: id , name (类别名称)和parent (类别的parent id)。 示例数据: 1 Fruit 0 2 Apple 1 3 pear 1 4 FujiApple 2 5 AusApple 2 6 SydneyAPPLE 5 …. 有很多级别,可能超过3级。 我想创build一个sql查询,按照他的层次来分组数据:parent> child> grandchild>等 它应该输出树结构,如下所示: 1 Fruit 0 ^ 2 Apple 1 ^ 4 FujiApple 2 – 5 AusApple 2 ^ 6 SydneyApple 5 – 3 […]

正则expression式validation密码强度

我的密码强度标准如下: 8个字符的长度 大写字母2个字母 1特殊字符(!@#$&*) 2个数字(0-9) 小写3个字母 有人可以给我同样的正则expression式。 所有的条件必须通过密码来满足。

按新行分割Javastring

我想分割文本在JTextArea使用正则expression式分割string\n然而,这是行不通的,我也尝试了\r\n|\r|n和其他许多\r\n|\r|nexpression式的组合。 码: public void insertUpdate(DocumentEvent e) { String split[], docStr = null; Document textAreaDoc = (Document)e.getDocument(); try { docStr = textAreaDoc.getText(textAreaDoc.getStartPosition().getOffset(), textAreaDoc.getEndPosition().getOffset()); } catch (BadLocationException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } split = docStr.split("\\n"); }

你如何实施一个良好的亵渎filter?

我们中的许多人需要处理用户input,search查询和input文本可能包含亵渎或不良语言的情况。 通常这需要被过滤掉。 在哪里可以find各种语言和方言的好发言单? 是否有包含良好列表的来源的API? 或者,也许是一个简单的说:“是的,这是干净的”或“没有这是肮脏的”与一些参数? 捕捉那些试图欺骗系统的人们有什么好方法,比如$$,azz或者a55? 如果您提供PHP的解决scheme,奖励积分。 🙂 编辑:回答说,只是避免程序性问题: 例如,当用户可以使用公共图像search来查找添加到敏感的社区池中的图片时,我认为有这样的filter的地方。 如果他们可以search“阴茎”,那么他们可能会得到许多照片,是的。 如果我们不想要这样的图片,那么阻止这个词作为检索词是一个好门将,虽然不是一个万无一失的方法。 首先获得单词列表是真正的问题。 所以我真的是指一种方法来找出一个单一的标记是不是很脏,然后简单地禁止它。 我不打扰,像一个完全搞笑的“长颈鹿长颈鹿”的参考预防情绪。 没有什么可以做的。 🙂

获取URL的部分(正则expression式)

给定URL(单行): http://test.example.com/dir/subdir/file.html 我如何使用正则expression式提取以下部分: 子域(testing) 域(example.com) 没有文件的path(/ dir / subdir /) 该文件(file.html) 文件path(/dir/subdir/file.html) 没有path的url( http://test.example.com ) (添加任何你认为会有用的东西) 正则expression式应该正常工作,即使我input下面的URL: http://example.example.com/example/example/example.html 谢谢。

为什么在Java 8中split有时会在结果数组开始时删除空string?

在Java 8之前 ,我们在空string上分割就像 String[] tokens = "abc".split(""); 拆分机制会在标有|地方拆分 |a|b|c| 因为在每个字符之前和之后存在空格"" 。 因此,它会首先产生这个数组 ["", "a", "b", "c", ""] 后来将删除尾随的空string (因为我们没有明确提供负值来limit参数),所以最终会返回 ["", "a", "b", "c"] 在Java 8分裂机制似乎已经改变。 现在当我们使用 "abc".split("") 我们将得到["a", "b", "c"]数组而不是["", "a", "b", "c"]所以它看起来像空string在开始时也被删除。 但是这个理论因为例如失败了 "abc".split("a") 在开始["", "bc"]返回数组为空string。 有人可以解释一下这里发生了什么,以及在Java 8中如何改变这种情况的规则?

正则expression式用于在不包含单引号或双引号时使用空格分割string

我是新来的正则expression式,并希望你的帮助。 我试图放在一起的expression式将使用不包含单引号或双引号的所有空格拆分示例string。 我的最后一次尝试看起来像这样:( (?!") ,并不是很有效,它正在引用之前的空间分裂。 示例input: This is a string that "will be" highlighted when your 'regular expression' matches something. 期望的输出: This is a string that will be highlighted when your regular expression matches something. 请注意, "will be"和'regular expression'保留单词之间的空格。

Java – 转义string,以防止SQL注入

我试图把一些反SQL注入在Java中,我发现很难与“replaceAll”string函数工作。 最终,我需要一个函数,将任何现有的\ \\ ,任何" \" , \"任何\'和任何\n为\\n以便当string被MySQL评估时,SQL注入将被阻止。 我已经拿起了一些我正在使用的代码,所有的函数都让我的眼睛变得疯狂。 如果有人碰巧有这样的例子,我将不胜感激。