Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Regular Expression - string koji ne odgovara kriterijumu

  • 8 odgovora
  • 3.596 pregleda

Najnovija ↓

Regular Expression - string koji ne odgovara kriterijumu 13.08.2012. u 23:47 · pre 173 meseca #1
Pozdrav,,

danas sam naletio na jedan problem, i pokusavao sam ga rijesiti, ali bezuspjesno.


Naime, pretpostavimo da imamo sledeci string:


Hello World, this is an example {first} of regular expression {second} in this sentence.

Potrebno je sve sto nije {nesto} da se prebaci, recimo, u velika slova.

Dakle, nisu mi interesantni slucajevi u zagradama, vec van njih.

Unaprijed hvala
Re: Regular Expression - string koji ne odgovara kriterijumu 14.08.2012. u 01:40 · pre 173 meseca
izmenjeno 2 puta, poslednji put Burgos 14.08.2012. u 02:18
  1. Burgos14.08.2012. u 02:18zapis iz teksta poruke
  2. Burgos14.08.2012. u 02:17zapis iz teksta poruke
#4
Onda ćeš istu brzinu, a potencijalno i veću, postići linearnim prolaskom kroz string i zamenom svega osim između { i }:

Code:
using System;
using System.Text;

namespace SampleNamespace
{
    public class SampleClass
    {
        public static void Main()
        {
            // Write hello world to the console
            String s = "Hello World, this is an example {first} of regular expression {second} in this sentence.";
            StringBuilder sb = new StringBuilder(s.Length);
            bool skip = false;
            for(int i = 0; i != s.Length; i++)
            {
                 if(skip)
                {
                     if(s[i] == '}')
                        skip = false;
                    sb.Append(s[i]);
                    continue;
                }
                if (s[i] == '{'){
                    skip = true;
                    sb.Append(s[i]);
                }
                else
                    sb.Append(Char.ToUpper(s[i]));
            }
    
            System.Console.WriteLine(sb.ToString());
        } // End of Main function (program statup)
    } // End of SampleClass
} // End of SampleNamespace
Re: Regular Expression - string koji ne odgovara kriterijumu 14.08.2012. u 13:46 · pre 173 meseca #8
Iskopirao sam tekst u RegExp Online Tester

i uzeo sam ovaj tvoj regular expression i dobio sam sledece:


Hello World, this is an example {first} of regular expression {second} in this sentence.

Dakle, izraz je podijelio tekst u 3 sekcije, shodno patternu, ali meni u tim dijelovima treba tekst bez patterna, dakle, patterne treba ignorisati.

Moguce je da ja negdje grijesim, ali ne vidim gdje.
Re: Regular Expression - string koji ne odgovara kriterijumu 14.08.2012. u 19:56 · pre 173 meseca #9
Treba ti druga grupa iz ovog Regex-a:
Code:
(^|})(([^{])*)


Npr (C#):
Code:

string s = "Hello World, this is an example {first} of regular expression {second} in this sentence.";

MatchCollection matches = Regex.Matches(s, "(^|})(([^{])*)");
foreach (Match m in matches)
{
    foreach (Capture c in m.Groups[2].Captures)
    {
        MessageBox.Show("'" + c.Value + "'");
    }
}
Potpis
IRC is just multiplayer notepad.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme