Skip to content

Commit b6909f9

Browse files
add quote operator
1 parent ce91c60 commit b6909f9

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

src/main/java/com/github/vertical_blank/sqlformatter/languages/PlSqlFormatter.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -434,6 +434,7 @@ public DialectConfig dialectConfig() {
434434
Arrays.asList(
435435
StringLiteral.DOUBLE_QUOTE,
436436
StringLiteral.N_SINGLE_QUOTE,
437+
StringLiteral.Q_SINGLE_QUOTE,
437438
StringLiteral.SINGLE_QUOTE,
438439
StringLiteral.BACK_QUOTE))
439440
.openParens(Arrays.asList("(", "CASE"))

src/main/java/com/github/vertical_blank/sqlformatter/languages/StringLiteral.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ public class StringLiteral {
1212
public static final String U_SINGLE_QUOTE = "U&''";
1313
public static final String E_SINGLE_QUOTE = "E''";
1414
public static final String N_SINGLE_QUOTE = "N''";
15+
public static final String Q_SINGLE_QUOTE = "Q''";
1516
public static final String SINGLE_QUOTE = "''";
1617
public static final String BRACE = "{}";
1718
public static final String DOLLAR = "$$";
@@ -47,6 +48,10 @@ private enum Preset {
4748
"(('[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+)"), // "((^'((?:''|[^'])*)')+)"),
4849
/** N'' */
4950
N_SINGLE_QUOTE(StringLiteral.N_SINGLE_QUOTE, "((N'[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+)"),
51+
/** q'' */
52+
Q_SINGLE_QUOTE(
53+
StringLiteral.Q_SINGLE_QUOTE,
54+
"(?i)((n?q'\\[.*($|\\]'))+)|((n?q'\\{.*($|\\}'))+)|((n?q'\\<.*($|\\>'))+)|((n?q'\\(.*($|\\)'))+)"),
5055
// single_quote("((^'((?:''|[^'])*)')+)"),
5156
E_SINGLE_QUOTE(StringLiteral.E_SINGLE_QUOTE, "((E'[^'\\\\]*(?:\\\\.[^'\\\\]*)*('|$))+)"),
5257
/** U&amp;'' */

0 commit comments

Comments
 (0)