簡體   English   中英

Java用RegexOption.MULTILINE分割字符串

[英]Java split string with RegexOption.MULTILINE

我想用分號結尾的示例拆分以下Sql語句:

CREATE TABLE projects(
   id INTEGER PRIMARY KEY AUTOINCREMENT     NOT NULL,
   name           TEXT    NOT NULL,
   created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);

CREATE INDEX ix_tasks_project_id ON tasks (project_id);

SELECT * FROM projects WHERE name = "someName;WithSemiColon";

類似於: string.split(";$"); (但使用RegexOption.MULTILINE

有人可以解釋我如何應用RegexOption嗎?

只需在正則表達式前面加上(?m)即可啟用標志MULTILINE因此在您的情況下為(?m);$

for (String s : string.split("(?m);$")) {
    System.out.printf("----> %s%n", s.trim());
}

輸出:

----> CREATE TABLE projects(
   id INTEGER PRIMARY KEY AUTOINCREMENT     NOT NULL,
   name           TEXT    NOT NULL,
   created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
)
----> CREATE INDEX ix_tasks_project_id ON tasks (project_id)
----> SELECT * FROM projects WHERE name = "someName;WithSemiColon"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM