Ho la seguente espressione regolarespaziatura essere incasinato in un'espressione regolare
var string_regex=(\s*[\{\[]?\%?[\s]*)[\@A-Za-z1-9_\.\s\+\-\*\\]*([\s\*]*=[\s\*\$]*[\{\"]?)[\@A-Za-z1-9_\.\s\+\-\*\\]*(\s*[\}\"]?)([\}\]\%\s]*)
dove il [\@A-Za-z1-9_\.\s\+\-\*\\]*
sarà sostituito da una stringa nel mio programma che viene scritto in un file che utilizza $1, $2, $3 and $4
come segue:
val newLineToBeReplacedOrAdded = "$1" + "set type cookies" + "$2" + "sugar cookies" + "$3" + "$4"
La stringa sto testando su è
{% set type cookies = "sugar cookies" %}
che corrisponde correttamente. Tuttavia, il problema che sto avendo è che quando scrivo fuori per il file, la distanza non si conserva accanto il segno di uguale così finisco con
{% set type cookies= "sugar cookies" %}
E 'una differenza molto minore, ma io' d apprezzare il feedback su come migliorare ulteriormente l'espressione per evitare questo.
Credo che il suo un problema specifico con [\@A-Za-z1-9_\.\s\+\-\*\\]*
Grazie! Ho imparato qualcosa di nuovo con la partita non avida :) E grazie per aver indicato dove si trova il problema. Dovrebbe aiutare anche gli altri – Zee
@vks - secondo il gruppo di cattura, vorrebbero includere quegli asterischi. Quindi è tecnicamente valido per l'esempio. – lintmouse