Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


string till int?

Postades av 2006-02-15 17:22:24 - Fredrik Nilsson, i forum c# (c-sharp), Tråden har 6 Kommentarer och lästs av 468 personer

Hej!

Jag har en string som innehåller siffror ibland och när när den gör det hämtar jag ut siffrorna och spar dem i en sträng.
Det funkar fint.
Sedan vill jag kolla om den innehåller något eller är null.

Innehåller den inte null vill jag öka på värdet i strängen med 1, spara den i iIndex och sedan lägga till den i slutet på strängen eMail.

Men när jag kommer till raden som ska lägga på 1 blir det fel.
Jag får "System.FormatException: Input string was not in a correct format.".

Hur ska jag göra?

Nedan finns min kod.

<code>

while(chkEmail(eMail) == false)
{
k++;

subStr = eMail.Substring(eMail.LastIndexOf(".") + 1);
subStr = Regex.Replace(subStr, @"\D[^0-9]", "");

if (subStr != null)
{
iIndex = Convert.ToInt16(subStr) + k;
}
eMail = eMail + iIndex;

}
</code>


Svara

Sv: string till int?

Postades av 2006-02-16 08:00:02 - Göran Andersson

Kolla ifall strängen är null innan du försöker göra något med den, annars så kommer du ju att få ett felmeddelande när du försöker använda metoden LastIndexOf på null.

Ditt regular expression ser ut att vara ett missförstånd... Det är samma sak som "\D\D" eller "\D{2}", alltså två tecken i rad som inte är siffror. Ska det verkligen vara två tecken? Ska du inte plocka bort alla tecken som inte är siffror?

Efter att du har plockat bort siffrorna så bör du kolla ifall det finns några tecken kvar i strängen. Ifall du konverterar en tom sträng till ett tal så får du värdet noll, vilket kanske inte alls är vad du är ute efter.


Svara

Sv:string till int?

Postades av 2006-02-16 08:17:04 - Fredrik Nilsson

Angående strängen så vet jag redan att den inte är tom. Det kollas med hjälp av chkEmail.

Hur ska jag göra med regular expression för att bara få ut siffrorna? Som det var nu fick jag ju ut dem bara för att jag hade .se i test datan och jag testade inte med något annat. Osis. :o)


Svara

Sv: string till int?

Postades av 2006-02-16 08:43:25 - Fredrik Nilsson

Så här ska det stå:
<code>subStr = Regex.Replace(subStr, @"[^\d\s]+", "");</code>


Svara

Sv:string till int?

Postades av 2006-02-16 08:43:37 - Fredrik Nilsson

Tack för hjälpen!


Svara

Sv: string till int?

Postades av 2006-02-16 09:26:21 - Fredrik Nilsson

Så här blev slutresultatet:
<code>

string subStr;
int k, iIndex;
k = 0;
iIndex = 0;

while (chkEmail(eMail) == false)
{
subStr = eMail.Substring(eMail.LastIndexOf(".") + 1);
subStr = Regex.Replace(subStr, @"[^\d\s]+", "");

if (subStr.Length > 0)
{
iIndex = Convert.ToInt16(subStr) + ++k;
}
else
{
iIndex++;
}
eMail = Regex.Replace(eMail, @"[\d\s]+", "") + iIndex.ToString();
}

return eMail;

</code>


Svara

Sv:string till int?

Postades av 2006-02-16 10:06:51 - Göran Andersson

> Så här ska det stå:
> subStr = Regex.Replace(subStr, @"[^\d\s]+", "");

Hm... Läs frågan igen. Bara siffror var det.

subStr = Regex.Replace(subStr, @"\D", "");


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 167
27 952
271 704
747
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies