namespace
{ template <typename T, typename C> T tmpl_strip(const T &rIn, const C cRemove)
{ if (rIn.empty()) return rIn;
typename T::size_type end = rIn.size(); while (end > 0)
{ if (rIn[end-1] != cRemove) break;
--end;
}
typename T::size_type start = 0; while (start < end)
{ if (rIn[start] != cRemove) break;
++start;
}
return rIn.substr(start, end - start);
} template <typename T, typename C> T tmpl_stripString(const T &rIn, const C cRemove)
{ if (rIn.isEmpty()) return rIn;
sal_Int32 end = rIn.getLength(); while (end > 0)
{ if (rIn[end-1] != cRemove) break;
--end;
}
sal_Int32 start = 0; while (start < end)
{ if (rIn[start] != cRemove) break;
++start;
}
namespace
{ template <typename T, typename C> sal_Int32 tmpl_getTokenCount( T rIn,
C cTok)
{ // Empty String: TokenCount by Definition is 0 if (rIn.empty()) return0;
sal_Int32 nTokCount = 1; for (typename T::size_type i = 0; i < rIn.size(); ++i)
{ if (rIn[i] == cTok)
++nTokCount;
} return nTokCount;
}
}
sal_uInt32 decimalStringToNumber(std::u16string_view str)
{
sal_uInt32 result = 0; for( std::size_t i = 0; i < str.size(); )
{
sal_uInt32 c = o3tl::iterateCodePoints(str, &i);
sal_uInt32 value = 0; if( c <= 0x0039) // ASCII decimal digits, most common
value = c - 0x0030; elseif( c >= 0x1D7F6 ) // mathematical monospace digits
value = c - 0x1D7F6; elseif( c >= 0x1D7EC ) // mathematical sans-serif bold digits
value = c - 0x1D7EC; elseif( c >= 0x1D7E2 ) // mathematical sans-serif digits
value = c - 0x1D7E2; elseif( c >= 0x1D7D8 ) // mathematical double-struck digits
value = c - 0x1D7D8; elseif( c >= 0x1D7CE ) // mathematical bold digits
value = c - 0x1D7CE; elseif( c >= 0x11066 ) // brahmi digits
value = c - 0x11066; elseif( c >= 0x104A0 ) // osmanya digits
value = c - 0x104A0; elseif( c >= 0xFF10 ) // fullwidth digits
value = c - 0xFF10; elseif( c >= 0xABF0 ) // meetei mayek digits
value = c - 0xABF0; elseif( c >= 0xAA50 ) // cham digits
value = c - 0xAA50; elseif( c >= 0xA9D0 ) // javanese digits
value = c - 0xA9D0; elseif( c >= 0xA900 ) // kayah li digits
value = c - 0xA900; elseif( c >= 0xA8D0 ) // saurashtra digits
value = c - 0xA8D0; elseif( c >= 0xA620 ) // vai digits
value = c - 0xA620; elseif( c >= 0x1C50 ) // ol chiki digits
value = c - 0x1C50; elseif( c >= 0x1C40 ) // lepcha digits
value = c - 0x1C40; elseif( c >= 0x1BB0 ) // sundanese digits
value = c - 0x1BB0; elseif( c >= 0x1B50 ) // balinese digits
value = c - 0x1B50; elseif( c >= 0x1A90 ) // tai tham tham digits
value = c - 0x1A90; elseif( c >= 0x1A80 ) // tai tham hora digits
value = c - 0x1A80; elseif( c >= 0x19D0 ) // new tai lue digits
value = c - 0x19D0; elseif( c >= 0x1946 ) // limbu digits
value = c - 0x1946; elseif( c >= 0x1810 ) // mongolian digits
value = c - 0x1810; elseif( c >= 0x17E0 ) // khmer digits
value = c - 0x17E0; elseif( c >= 0x1090 ) // myanmar shan digits
value = c - 0x1090; elseif( c >= 0x1040 ) // myanmar digits
value = c - 0x1040; elseif( c >= 0x0F20 ) // tibetan digits
value = c - 0x0F20; elseif( c >= 0x0ED0 ) // lao digits
value = c - 0x0ED0; elseif( c >= 0x0E50 ) // thai digits
value = c - 0x0E50; elseif( c >= 0x0D66 ) // malayalam digits
value = c - 0x0D66; elseif( c >= 0x0CE6 ) // kannada digits
value = c - 0x0CE6; elseif( c >= 0x0C66 ) // telugu digits
value = c - 0x0C66; elseif( c >= 0x0BE6 ) // tamil digits
value = c - 0x0BE6; elseif( c >= 0x0B66 ) // odia digits
value = c - 0x0B66; elseif( c >= 0x0AE6 ) // gujarati digits
value = c - 0x0AE6; elseif( c >= 0x0A66 ) // gurmukhi digits
value = c - 0x0A66; elseif( c >= 0x09E6 ) // bengali digits
value = c - 0x09E6; elseif( c >= 0x0966 ) // devanagari digit
value = c - 0x0966; elseif( c >= 0x07C0 ) // nko digits
value = c - 0x07C0; elseif( c >= 0x06F0 ) // extended arabic-indic digits
value = c - 0x06F0; elseif( c >= 0x0660 ) // arabic-indic digits
value = c - 0x0660;
result = result * 10 + value;
} return result;
}
usingnamespace ::com::sun::star;
// convert between sequence of string and comma separated string
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.