diff options
Diffstat (limited to 'www/wiki/extensions/Translate/insertables/NumericalParameterInsertablesSuggester.php')
-rw-r--r-- | www/wiki/extensions/Translate/insertables/NumericalParameterInsertablesSuggester.php | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/www/wiki/extensions/Translate/insertables/NumericalParameterInsertablesSuggester.php b/www/wiki/extensions/Translate/insertables/NumericalParameterInsertablesSuggester.php new file mode 100644 index 00000000..13ffd4af --- /dev/null +++ b/www/wiki/extensions/Translate/insertables/NumericalParameterInsertablesSuggester.php @@ -0,0 +1,29 @@ +<?php +/** + * Insertables suggester for numerical parameters such as $1, $2, $3 + * + * @file + * @author Geoffrey Mon + * @license GPL-2.0-or-later + */ + +class NumericalParameterInsertablesSuggester implements InsertablesSuggester { + public function getInsertables( $text ) { + $insertables = []; + + // $1, $2, $3 etc. + $matches = []; + preg_match_all( + '/\$\d+/', + $text, + $matches, + PREG_SET_ORDER + ); + $new = array_map( function ( $match ) { + return new Insertable( $match[0], $match[0] ); + }, $matches ); + $insertables = array_merge( $insertables, $new ); + + return $insertables; + } +} |