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


"Tvätta bort" icke 7-bitars ASCII-tecken ur strängar

Postades av 2005-06-03 13:54:56 - Jonas Österlöf, i forum c# (c-sharp), Tråden har 4 Kommentarer och lästs av 817 personer

Hej!

Har en lite kodsnutt som tar en användares förnamn och efternamn och genererar en e-postadress utifrån detta.

Snutten ersättar å och ä med a, ö med o, é med e, ñ med n osv, genom regex.replace för varje tecken/ersättningstecken.

Min fråga är helt enkelt: finns det något enklare sätt? Typ en inbyggd regexmetod eller möjligen regexoption som konverterar tecken med accenter, diakriter osv till deras "icke-accentade" motsvarighet, ungefär som man kan ignorera kapitalisering mha regex?

Eller nån fin metod nån annastans i ramverket, typ System.Globalization eller nåt sånt?

Antar att svaret är nej, men man lever ju på hoppet... :-)

/Jonas


Svara

Sv: "Tvätta bort" icke 7-bitars ASCII-tecken ur strängar

Postades av 2005-06-03 21:26:14 - Joakim Åhl

har du provat med att köra validering av textfälten som matas in.Tror man kan ställa in i valideringen vila tacken som får vara med.


Svara

Sv:"Tvätta bort" icke 7-bitars ASCII-tecken ur strängar

Postades av 2005-06-04 01:08:12 - Björn Österman

Enligt följande blog-entry:
http://blogs.msdn.com/michkap/archive/2005/02/19/376617.aspx

så kommer det en Normalize-funktion i .NET 2.0

Jag skrev ihop ett program som använder FoldString-functionen som nämns i bloggen.

using System;
using System.Runtime.InteropServices;
using System.Text;

class MittProgram {
	[STAThread]
	static void Main() {
		Console.WriteLine( cleanup("abc dêf åxo Öland |") );
	}

	[Flags] 
		private enum MapFlags { 
		MAP_FOLDCZONE = 0x00000010,// fold compatibility zone chars 
		MAP_PRECOMPOSED = 0x00000020,// convert to precomposed chars 
		MAP_COMPOSITE = 0x00000040, // convert to composite chars 
		MAP_FOLDDIGITS = 0x00000080 // all digits to ASCII 0-9 
	} 
	[DllImport("kernel32.dll")]
	static extern bool FoldString(MapFlags dwMapFlags, string lpSrcStr, int cchSrc,
		[Out] StringBuilder lpDestStr, int cchDest);

	static string cleanup(string value) {
		StringBuilder sb = new StringBuilder(value.Length * 2);
		FoldString(MapFlags.MAP_COMPOSITE,value,value.Length,sb,value.Length*2);
		StringBuilder ret = new StringBuilder(value.Length);
		foreach ( char c in sb.ToString() ) if ( char.IsLetter(c) ) ret.Append(c);
		return ret.ToString();
	}
}


// MvH Björne


Svara

Sv: "Tvätta bort" icke 7-bitars ASCII-tecken ur strängar

Postades av 2005-06-06 12:37:43 - Jonas Österlöf

Tack Björne!
Gamla goda win-api:er till räddningen alltså.
Ja, ibland glömmer man bort att .NET inte har tillgång till allt godis.
Mycket intressant detta med normaliseringsfunktionerna i Whidbey.
mvh
/Jonas


Svara

Sv:"Tvätta bort" icke 7-bitars ASCII-tecken ur strängar

Postades av 2005-06-06 12:40:50 - Jonas Österlöf

Tack Joakim, men koden ska alltså generera mejladresser utifrån en redan existerande databas med personuppgifter. Och det ska vara helt ok att t.ex. heta "Åhl" med "Å" i efternamn. :-) Inmatningsvalidering skulle alltså inte hjälpa här. Men nu löste det ju sig ändå.
mvh
/Jonas


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 166
27 952
271 704
726
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