Je travaille sur l'ajout de nouvelles langues support pour ma plate-forme mobile.Je dois ajouter une entrée pour chaque langue dans plusieurs fichiers, donc je pensais le faire en utilisant perl.Pour automatiser ce processus, je me sens problème dans la façon de faire correspondre les modèles multi-lignes en Perl. Voici mon scénario:traitement multiligne en perl
const mmi_imeres_mode_details_struct g_ime_mode_array_int[] =
{
{
INPUT_MODE_NONE,
0,
0,
0,
0,
0,
0
},
{
INPUT_MODE_MULTITAP_LOWERCASE_ABC,
STR_INPUT_METHOD_MENU_MULTITAP_abc,
WGUI_IME_MULTITAP_LOWERCASE_ABC_IMG,
INPUT_MODE_DEFAULT_ALTERNATE_METHOD,
MMI_IME_ALL_EDITORS | MMI_IME_ENGLISH_ONLY_MODE | MMI_IME_ALPHABETIC | MMI_IME_LOWERCASE,
MMI_IMM_WRITING_LANGUAGE_ENGLISH,
"en-US"
},
}
Tout d'abord j'ai eu problème parce que dans le fichier perl est lu une ligne à time.so i d'abord converti mon flux de fichier dans seule variable.
my $newstr = '';
open (FH, "$filename") || die "Could not open file.\n";
while(<FH>)
{
$newstr = $newstr.$_;
}
Pas quelqu'un peut me aider comment rechercher du texte dans {}, si elle est un multi-ligne pattern.please réponse bientôt ... :)
thnx beaucoup laissez-moi essayer .. –
Vous savez, je ne suis pas vraiment heureux avec ma réponse précédente. Bien qu'il soit techniquement correct, il ne considère pas la plus grande tâche à accomplir. Vous analysez les tags imbriqués. Pour cela, utilisez un module d'analyse syntaxique; n'essayez pas de lancer votre propre solution d'expression rationnelle. Ça devient complexe très vite. Au lieu de cela, utilisez Parse :: RecDescent, ou Parse :: RecDescent :: Simple pour une meilleure précision, moins de maux de tête et un meilleur sommeil la nuit. – DavidO
ouais vous avez raison, à long terme, il n'est pas bénéfique, mais cpan est assez vaste à utiliser.Mais j'essaierai de..thnx pour votre suggestion..réalement utile ... :) –