Skip to content

Commit 9dbcfd3

Browse files
committed
Support comments starting with '#' character (fixes andialbrecht#178).
1 parent d02a952 commit 9dbcfd3

File tree

3 files changed

+12
-1
lines changed

3 files changed

+12
-1
lines changed

CHANGES

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ Enhancements
1717
* Add support for square bracket array indexing (issue170, issue176,
1818
issue177 by darikg).
1919
* Improve grouping of aliased elements (issue167, by darikg).
20+
* Support comments starting with '#' character (issue178).
2021

2122

2223
Release 0.1.14 (Nov 30, 2014)

sqlparse/lexer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ class Lexer(object):
167167
(r'--.*?(\r\n|\r|\n)', tokens.Comment.Single),
168168
# $ matches *before* newline, therefore we have two patterns
169169
# to match Comment.Single
170-
(r'--.*?$', tokens.Comment.Single),
170+
(r'(--|#).*?$', tokens.Comment.Single),
171171
(r'(\r\n|\r|\n)', tokens.Newline),
172172
(r'\s+', tokens.Whitespace),
173173
(r'/\*', tokens.Comment.Multiline, 'multiline-comments'),

tests/test_parse.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -283,3 +283,13 @@ def test_typed_array_definition():
283283
assert names == ['x', 'y', 'z']
284284

285285

286+
@pytest.mark.parametrize('sql', [
287+
'select 1 -- foo',
288+
'select 1 # foo' # see issue178
289+
])
290+
def test_single_line_comments(sql):
291+
p = sqlparse.parse(sql)[0]
292+
assert len(p.tokens) == 5
293+
assert p.tokens[-1].ttype == T.Comment.Single
294+
295+

0 commit comments

Comments
 (0)