歡迎光臨
每天分享高質量文章

正則運算式生成—VerbalExpressions

從聽說正則運算式這個詞開始,我就沒學會過怎麼寫正則運算式,也是有認真學過的,但是由於不經常用,學一次忘一次。前段時間遇到VerbalExpressions這個神器,以後再也不用用google搜正則運算式了。PS:它支援多種語言,例如C#、Python、Swift、Java等等。

如果你使用maven管理專案,則在pom檔案中新增如下依賴:

  1.    ru.lanwen.verbalregex

  •    java-verbal-expressions

  •    1.4

  • 我自己試了下,假如要匹配“以a開頭,以b結尾”的字串,可以用如下程式碼:

    1. package com.javadu;

    2. import ru.lanwen.verbalregex.VerbalExpression;

    3. public class regexTool {

    4.    public static void main(String[] args) {

    5.        VerbalExpression testRegex = VerbalExpression.regex().

    6.                startOfLine().then("a").

    7.                anything().

    8.                endOfLine().then("b").

    9.                build();

    10.        System.out.println(testRegex.toString());

    11.        String str = "a123dddb";

    12.        System.out.println(testRegex.test(str));

    13.    }

    14. }

    執行結果如下:

    1. ^(?:a)(?:.*)(?:b)$

    2. true

    3. Process finished with exit code 0

    推薦一個我最近在學的JVM課程,來自Oracle高階研究員鄭宇迪在極客時間的JVM專欄,目前更新了12篇文章,我基本都跟下來了,質量值得信賴。

    整個專欄將分為四大模組。

    1. 基本原理:剖析 Java 虛擬機器的執行機制,逐一介紹 Java 虛擬機器的設計決策以及工程實現;

    2. 高效實現:探索 Java 編譯器,以及內嵌於 Java 虛擬機器中的即時編譯器,幫助你更好地理解 Java 語言特性,繼而寫出簡潔高效的程式碼;

    3. 程式碼最佳化:介紹如何利用工具定位並解決程式碼中的問題,以及在已有工具不適用的情況下,如何打造專屬輪子;

    4. 虛擬機器黑科技:介紹甲骨文實驗室近年來的前沿工作之一 GraalVM。包括如何在 JVM 上高效執行其他語言;如何混搭這些語言,實現 Polyglot;如何將這些語言事前編譯(Ahead-Of-Time,AOT)成機器指令,單獨執行甚至嵌入至資料庫中執行。

    贊(0)

    分享創造快樂

    © 2024 知識星球   網站地圖