Skip to content

Commit 75aec69

Browse files
committed
replace adjacent whitespace characters with a single SPACE character
1 parent 9b96735 commit 75aec69

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/lib/xpath.pl

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -642,11 +642,22 @@
642642
no_leading_whitespace(Cs0, Cs1),
643643
reverse(Cs1, Cs2),
644644
no_leading_whitespace(Cs2, Cs3),
645-
reverse(Cs3, Cs).
645+
reverse(Cs3, Cs4),
646+
single_intermediate_space(Cs4, Cs).
646647

647648
no_leading_whitespace([], []).
648649
no_leading_whitespace([C0|Cs0], Cs) :-
649650
( char_type(C0, whitespace) ->
650651
no_leading_whitespace(Cs0, Cs)
651652
; Cs = [C0|Cs0]
652653
).
654+
655+
single_intermediate_space([], []).
656+
single_intermediate_space([C0|Cs0], [C|Cs]) :-
657+
( char_type(C0, whitespace) ->
658+
no_leading_whitespace(Cs0, Cs1),
659+
C = ' ',
660+
single_intermediate_space(Cs1, Cs)
661+
; C = C0,
662+
single_intermediate_space(Cs0, Cs)
663+
).

0 commit comments

Comments
 (0)