Replace i richtextBox
Jag använder följande kod för att replaca i en richtextbox:
<code>
try
{
intMul++;
Regex r = new Regex(richTextBox1.SelectedText);
string newString = "<% = MULTILANGUAGE=" + intMul + " %>";
richTextBox1.SelectedText = r.Replace(richTextBox1.SelectedText,newString);
}
catch(Exception fel)
{
MessageBox.Show(fel.Message, "RichtextBox_Replace");
}
</code>
Vad mitt problem är, om texten ser ut som:
Eftersom det tillkommer en onödig postavgift, så är det nog att föredra att Du kommer ner till vår föreningslokal.
Där kan Du teckna medlemskap och betala medlemsavgiften.<BR>
Adressen är: Nydalavägen 10 (västra gaveln).<BR>Vi har öppet tisdagar kl 16.00 - 20.00
Här går det inte att göra någon replace.
Är texten för stor?
Hur bör jag ändra min kod för att den skall ta replacen.
intMul är en räknare för att hålla reda på de raplacade texterna, och den räknas upp efter varje gång, men den räkna ju upp även om det misslyckas, hur göra?
Svara
Sv: Replace i richtextBox
om det där är den koden du har i ditt formulär så bör du väll få kompileringsfel?
string newString = "<% = MULTILANGUAGE=" + <b>intMul.ToString()</b> + " %>";
borde det väll iaf vara.
//Roger
Svara
Sv: Replace i richtextBox
Det som du anger när du skapar RegEx-objektet är inte texten som du ska ersätta något i, utan mönstret som ska användas för ersättningen.
Svara
Sv: Replace i richtextBox
Roggan: missa av mig, men jag fick inga fel konstigt nog.
Guffa: menar du Regex r = new Regex(richTextBox1.SelectedText);?
Om jag ändrar om det till : Regex r = new Regex(richTextBox1.Text); då händer ingenting.
När jag rensar bland osynliga tecken, så blev det genast bättre, men fortfarande t ex (västra gaveln) vägrar han att ta, lustigt???
Svara
Sv: Replace i richtextBox
fråga: vill du bara stoppa in newstring i din markering kan du ju göra enligt följande:
1 2 3 4 | string newString = "<% = MULTILANGUAGE=" + intMul + " %>" ; string beg=richTextBox1.Text.Substring(0,richTextBox1.SelectionStart); string end=richTextBox1.Text.Substring(richTextBox1.SelectionStart + richTextBox1.SelectionLength); richTextBox1.Text=beg+ newString +end; |
Svara
Sv: Replace i richtextBox
Arathorn: DU ÄR BÄST.
Nu fungerar den biten kanonbra.
Jag ville passa på och fråga en annan sak. Enl http://www.syncfusion.com/FAQ/WinForms/FAQ_c95c.asp#q548q
så skulle man kunna sätta default button:
Form1.AcceptButton = button1;
Jag hittar inte den möjligheten.
Detta är kanske inte superviktigt, men vore bra. Några tips?
Svara