No Description

psfunctions.h 6.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. #ifndef PSFUNCTIONS_H
  2. #define PSFUNCTIONS_H
  3. /// \file
  4. #include <iostream>
  5. #include <string>
  6. using namespace std;
  7. /// \fn string toUpperString(const string &st)
  8. /// \~English
  9. /// \brief Returns an uppercase version of the received string.
  10. /// \param st string by reference to analyze
  11. /// \~Spanish
  12. /// \brief Devuelve una version en mayusculas de la cadena de caracteres recibida.
  13. /// \param st cadena de caracteres por referencia a analizar.
  14. string toUpperString(const string &st);
  15. /// \fn unsigned int countCharsOfType(const string &st, int (* filterFunction)(int args) , int fromIdx = 0, int toIdx = -1)
  16. /// \~English
  17. /// \brief Given a string will return the number of characters
  18. /// of a certain type.
  19. /// \param st string to analyze
  20. /// \param filterFunction a function pointer to a function that returns 1
  21. /// when a character of the type is given. For example, if function is islower,
  22. /// then countCharsOfType will count lowercase characters.
  23. /// \param fromIdx index from where to start count
  24. /// \param toIdx last index for count
  25. /// \~Spanish
  26. /// \brief Dada una cadena de caracters devuelve el numero de caracteres de un
  27. /// cierto tipo.
  28. /// \param st Cadena de caracteres a analizar
  29. /// \param filterFunction Apuntador a funcion a una funcion que devuelve 1
  30. /// cuando un caracter de el typo es dado. Por ejemplo, si la funciones la funcion
  31. /// islower, entonces countCharsOfType contara caracteres en minuscula
  32. /// \param fromIdx indice de desde donde comenzar a contar.
  33. /// \param toIdx ultimo indice para contar.
  34. unsigned int countCharsOfType(const string &st,
  35. int (* filterFunction)(int args) ,
  36. unsigned int fromIdx, unsigned int toIdx);
  37. /// \fn unsigned int countUppercase(const string &st)
  38. /// \~English
  39. /// \brief Given a string will return the number of uppercase
  40. /// characters.
  41. /// \param st string by reference to analyze
  42. /// \~Spanish
  43. /// \brief Dada una cadena de caracteres devolvera el numero de caracteres
  44. /// en mayuscula.
  45. /// \param st cadena de caracteres por referencia a analizar.
  46. unsigned int countUppercase(const string &st);
  47. /// \fn unsigned int countLowercase(const string &st)
  48. /// \~English
  49. /// \brief Given a string will return the number of lowercase
  50. /// characters.
  51. /// \param st string by reference to analyze
  52. /// \~Spanish
  53. /// \brief Dada una cadena de caracteres devolvera el numero de caracteres
  54. /// en minuscula.
  55. /// \param st cadena de caracteres por referencia a analizar.
  56. unsigned int countLowercase(const string &st);
  57. /// \fn unsigned int countDigits(const string &st)
  58. /// \~English
  59. /// \brief Given a string will return the number of digits.
  60. /// \param st string by reference to analyze
  61. /// \~Spanish
  62. /// \brief Dada una cadena de caracteres devolvera el numero de digitos.
  63. /// \param st cadena de caracteres por referencia a analizar.
  64. unsigned int countDigits(const string &st);
  65. /// \fn unsigned int countSymbols(const string &st)
  66. /// \~English
  67. /// \brief Given a string will return the number of symbols.
  68. /// \param st string by reference to analyze
  69. /// \~Spanish
  70. /// \brief Dada una cadena de caracteres devolvera el numero de simbolos.
  71. /// \param st cadena de caracteres por referencia a analizar.
  72. unsigned int countSymbols(const string &st);
  73. /// \fn unsigned int middleDigitsOrSymbols(const string &st)
  74. /// \~English
  75. /// \brief Returns the number of digits and symbols
  76. /// that are not the first or last characters of the received string.
  77. /// \param st string by reference to analyze
  78. /// \~Spanish
  79. /// \brief Devuelve el numero de digitos y simbolos que no son el primer
  80. /// o el ultimo caracter de la cadena recibida.
  81. /// \param st cadena de caracteres por referencia a analizar.
  82. unsigned int middleDigitsOrSymbols(const string &st);
  83. /// \fn int isSymbol(int c)
  84. /// \~English
  85. /// \brief Returns 1 if the passed argument is a symbol.
  86. /// \param c the character to be analyzed.
  87. /// \~Spanish
  88. /// \brief Devuelve 1 si el argumento es un simbolo.
  89. /// \param c el caracter a ser analizado.
  90. int isSymbol(int c);
  91. /// \fn int isDigitOrSymbol(int c)
  92. /// \~English
  93. /// \brief Returns 1 if the passed argument is a digit or symbol.
  94. /// \param c the character to be analyzed.
  95. /// \~Spanish
  96. /// \brief Devuelve 1 si el argumento es un digito o simbolo.
  97. /// \param c el caracter a ser analizado.
  98. int isDigitOrSymbol(int c);
  99. ///
  100. /// \fn unsigned int countCharsOfType(const string &st, int (* filterFunction)(int args) , int fromIdx = 0, int toIdx = -1)
  101. /// \~English
  102. /// \brief Given a string will return the number of characters
  103. /// of a certain type that follow a character of that same type.
  104. /// \param st string to analyze
  105. /// \param filterFunction a function pointer to a function that returns 1
  106. /// when a character of the type is given. For example, if function is islower,
  107. /// then countConsecutive will count consecutive lowercase characters.
  108. /// \~Spanish
  109. /// \brief Dada una cadena de caracters devuelve el numero de caracteres de un
  110. /// cierto tipo que sigue un caracter de el mismo tipo.
  111. /// \param st Cadena de caracteres a analizar
  112. /// \param filterFunction Apuntador a funcion a una funcion que devuelve 1
  113. /// cuando un caracter de el typo es dado. Por ejemplo, si la funciones la funcion
  114. /// islower, entonces countConsecutive contara caracteres consecutivos en minuscula
  115. unsigned int countConsecutive(const string &st, int (* filterFunction)(int args) );
  116. /// \fn unsigned int consecUppercase(const string &st)
  117. /// \~English
  118. /// \brief Given a string will return the number of
  119. /// uppercase characters that follow a character of that same type.
  120. /// \param st string by reference to analyze
  121. /// \~Spanish
  122. /// \brief Dada una cadena devolvera el numero de caracteres en mayuscula que
  123. /// sigue a un caracter del mismo tipo.
  124. /// \param st cadena de caracteres por referencia a analizar.
  125. unsigned int consecUppercase(const string &st);
  126. /// \fn unsigned int consecLowercase(const string &st)
  127. /// \~English
  128. /// \brief Given a string will return the number of
  129. /// lowercase characters that follow a character of that same type.
  130. /// \param st string by reference to analyze
  131. /// \~Spanish
  132. /// \brief Dada una cadena devolvera el numero de caracteres en minuscula que
  133. /// sigue a un caracter del mismo tipo.
  134. /// \param st cadena de caracteres por referencia a analizar.
  135. unsigned int consecLowercase(const string &st);
  136. /// \fn unsigned int consecDigits(const string &st)
  137. /// \~English
  138. /// \brief Given a string will return the number of
  139. /// digits that follow a digit.
  140. /// \param st string by reference to analyze
  141. /// \~Spanish
  142. /// \brief Dada una cadena devolvera el numero de digitos que
  143. /// sigue a un digito.
  144. /// \param st cadena de caracteres por referencia a analizar.
  145. unsigned int consecDigits(const string &st);
  146. #endif // PSFUNCTIONS_H