10000 Link to regex-to-strings demo · wimpyprogrammer/strings-to-regex@7e99fea · GitHub
[go: up one dir, main page]

Skip to content

Commit 7e99fea

Browse files
Link to regex-to-strings demo
Generate a link to reverse the Regular Expression into its source strings.
1 parent 526bbae commit 7e99fea

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

demo/index.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,9 @@
149149
class="form-control js-output"
150150
rows="1"
151151
></textarea>
152+
<a class="form-text js-link-expand" href="javascript:void(0)">
153+
Expand expression with <code>regex-to-strings</code>
154+
</a>
152155
</div>
153156
</section>
154157

demo/src/demo.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,18 @@ const $delimiter = getElement<HTMLSelectElement>('.js-delimiter');
1414
const $caseSensitive = getElement<HTMLInputElement>('.js-case');
1515
const $trim = getElement<HTMLInputElement>('.js-trim');
1616
const $output = getElement<HTMLTextAreaElement>('.js-output');
17+
const $expandLink = getElement<HTMLAnchorElement>('.js-link-expand');
1718
const $submit = getElement<HTMLButtonElement>('.js-generate');
1819

20+
function generateExpandUrl(delimiter: string, pattern: RegExp): URL {
21+
const query = new URLSearchParams({
22+
delimiter,
23+
numResults: '500',
24+
pattern: pattern.toString(),
25+
});
26+
return new URL(`https://www.wimpyprogrammer.com/regex-to-strings/?${query}`);
27+
}
28+
1929
function generatePattern(words: string): RegExp {
2030
const delimiter = $delimiter.options[$delimiter.selectedIndex].value;
2131
const isCaseSensitive = $caseSensitive.checked;
@@ -58,6 +68,9 @@ function onClickGenerate(): void {
5868
const words = $input.value;
5969
const pattern = generatePattern(words);
6070
displayPattern(pattern);
71+
72+
const delimiter = $delimiter.options[$delimiter.selectedIndex].value;
73+
$expandLink.href = generateExpandUrl(delimiter, pattern).toString();
6174
}
6275
$submit.addEventListener('click', onClickGenerate);
6376

@@ -73,4 +86,7 @@ autoExpandTextarea($output);
7386
$input.dispatchEvent(new Event('input'));
7487
const pattern = generatePattern(exampleInput);
7588
displayPattern(pattern);
89+
90+
const delimiter = $delimiter.options[$delimiter.selectedIndex].value;
91+
$expandLink.href = generateExpandUrl(delimiter, pattern).toString();
7692
})();

0 commit comments

Comments
 (0)
0