00001
00002
00003
00004
00005
00006
00007
00008
00009 #include "StringFunctions.h"
00010 #include <string.h>
00011
00012 void getYabslString(char* dstYabsl, const char* src)
00013 {
00014
00015
00016
00017
00018
00019
00020
00021 unsigned int i=0;
00022 unsigned int j=0;
00023 char lastChar='A';
00024 int charsSinceLastMinus=0;
00025 while (i<strlen(src))
00026 {
00027 if (((lastChar<'A')||(lastChar>'Z'))&&(src[i]>='A')&&(src[i]<='Z'))
00028 {
00029 lastChar=src[i]|0x20;
00030 if (charsSinceLastMinus > 1)
00031 {
00032 dstYabsl[j++]='_';
00033 charsSinceLastMinus=0;
00034 }
00035 dstYabsl[j++]=src[i++]|0x20;
00036 dstYabsl[j]=0;
00037 charsSinceLastMinus++;
00038 }
00039 else
00040 {
00041 lastChar=src[i];
00042 dstYabsl[j++]=src[i++];
00043 dstYabsl[j]=0;
00044 charsSinceLastMinus++;
00045 }
00046 }
00047 }
00048
00049 void getXmlString(char* dstYabsl, const char* src)
00050 {
00051
00052
00053
00054
00055
00056
00057
00058 unsigned int i=0;
00059 unsigned int j=0;
00060 char lastChar='A';
00061 int charsSinceLastMinus=0;
00062 while (i<strlen(src))
00063 {
00064 if (((lastChar<'A')||(lastChar>'Z'))&&(src[i]>='A')&&(src[i]<='Z'))
00065 {
00066 lastChar=src[i]|0x20;
00067 if (charsSinceLastMinus > 1)
00068 {
00069 dstYabsl[j++]='-';
00070 charsSinceLastMinus=0;
00071 }
00072 dstYabsl[j++]=src[i++]|0x20;
00073 dstYabsl[j]=0;
00074 charsSinceLastMinus++;
00075 }
00076 else
00077 {
00078 lastChar=src[i];
00079 dstYabsl[j++]=src[i++];
00080 dstYabsl[j]=0;
00081 charsSinceLastMinus++;
00082 }
00083 }
00084 }