{"id":2162,"date":"2014-10-10T14:26:44","date_gmt":"2014-10-10T12:26:44","guid":{"rendered":"http:\/\/descartesjs.org\/documentacion\/?p=2162"},"modified":"2021-08-06T16:14:00","modified_gmt":"2021-08-06T15:14:00","slug":"funciones-para-gestion-de-cadenas","status":"publish","type":"post","link":"https:\/\/reddescartes.org\/documentacion\/funciones-para-gestion-de-cadenas\/","title":{"rendered":"Funciones para gesti\u00f3n de cadenas"},"content":{"rendered":"<div align=\"center\">\n<p style=\"text-align: left;\">Las funciones para gesti\u00f3n de cadenas de texto (<em>strings<\/em>) que reconoce el analizador de expresiones de Descartes son las siguientes:<\/p>\n<table style=\"height: 345px;\" border=\"1\" width=\"565\">\n<tbody>\n<tr valign=\"middle\">\n<td style=\"width: 50px; text-align: center;\"><span style=\"color: #73a53e;\"><strong>En espa\u00f1ol<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">&nbsp;<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>En ingl\u00e9s<\/strong><\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\"><span style=\"color: #73a53e;\"><strong>_longitud_(str)&nbsp;<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">Devuelve el n\u00famero de car\u00e1cteres que tiene la cadena str<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>_length_(str)<\/strong><\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\"><span style=\"color: #73a53e;\"><strong>_subcadena_(str,i,f)<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">Devuelve la cadena formada por los car\u00e1cteres desde el i (inclu\u00eddo) hasta el f (exclu\u00eddo).&nbsp;Por ejemplo,&nbsp;cuando str=&#8217;espuela&#8217;,&nbsp;para obtener &#8216;pue&#8217; habr\u00eda que llamar _subcadena_(str,2,5) y&nbsp;&#8216;puela&#8217; habr\u00eda que llamar&nbsp;_subcadena_(str,2,_longitud_(str))<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>_substring_(str,i,f)<\/strong><\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\"><span style=\"color: #73a53e;\"><strong>_letraEn_<strong>(str,n)<\/strong><\/strong><\/span><\/td>\n<td style=\"width: 350px;\">Devuelve la letra que se encuentra en la posici\u00f3n n de la cadena,&nbsp;por ejemplo _letraEn_(&#8216;espuela&#8217;,3) devolver\u00eda &#8216;u&#8217;<\/td>\n<td style=\"width: 350px;\">\n<p style=\"text-align: center;\"><strong>_charAt_(str,n)<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\"><span style=\"color: #73a53e;\"><strong>_\u00edndiceDe_(str,substr)<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">Devuelve la primera posici\u00f3n en la cadena en la que se encuentra la subcadena substr. Por ejemplo:&nbsp;_\u00edndiceDe_(&#8216;espuela&#8217;,&#8217;el&#8217;) devuelve 4.&nbsp;Si la subcadena substr no aparece en la cadena str, entonces devuelve -1<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>_indexOf_(str,substr)<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>Tambi\u00e9n se cuenta con una funci\u00f3n que transforma un n\u00famero en una cadena<\/p>\n<table class=\"aligncenter\" style=\"height: 135px;\" border=\"1\" width=\"565\">\n<tbody>\n<tr valign=\"middle\">\n<td style=\"width: 50px; text-align: center;\"><span style=\"color: #73a53e;\"><strong>En espa\u00f1ol<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">&nbsp;<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>En ingl\u00e9s<\/strong><\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\"><span style=\"color: #73a53e;\"><strong>_NumACadena_(num,dec)&nbsp;<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">Devuelve el n\u00famero num como una cadena de car\u00e1cteres con dec decimales.<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>_NumToStr_(num,dec)<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Un ejemplo de esta funci\u00f3n puede observarse en la siguiente escena<\/p>\n<p style=\"text-align: center;\">\n<!-- iframe plugin v.4.5 wordpress.org\/plugins\/iframe\/ -->\n<iframe src=\"https:\/\/descartesjs.org\/repositorio\/NumToStr\/index2.html\" width=\"400\" height=\"400\" scrolling=\"yes\" class=\"iframe-class\" frameborder=\"0\"><\/iframe>\n<\/p>\n<p>Esta funci\u00f3n _NumToStr_ es imprescindible para controlar el n\u00famero de decimales cuando en un texto con formato se concatena un n\u00famero con una cadena. Podemos observarlo en la siguiente escena:<\/p>\n<div style=\"text-align: center;\">\n<!-- iframe plugin v.4.5 wordpress.org\/plugins\/iframe\/ -->\n<iframe src=\"https:\/\/descartesjs.org\/repositorio\/NumToStr\/index.html\" width=\"530\" height=\"530\" scrolling=\"yes\" class=\"iframe-class\" frameborder=\"0\"><\/iframe>\n<\/div>\n<div style=\"text-align: center;\">(Puede descargar esta escena y la anterior desde <a href=\"https:\/\/descartesjs.org\/repositorio\/NumToStr.zip\">este enlace<\/a>)<\/div>\n<p>&nbsp;<\/p>\n<p>Otra funci\u00f3n permite generar una cadena a partir de los elementos de un vector<\/p>\n<table class=\"aligncenter\" style=\"height: 300px;\" border=\"1\" width=\"565\">\n<tbody>\n<tr valign=\"middle\">\n<td style=\"width: 50px; text-align: center;\"><span style=\"color: #73a53e;\"><strong>En espa\u00f1ol<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">&nbsp;<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>En ingl\u00e9s<\/strong><\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\">&nbsp;<\/td>\n<td style=\"width: 350px;\">Genera una cadena de caracteres formada al concatenar la etiqueta &lt;<em>vector<\/em>&gt;con lo valores de los elementos de ese vector separados por el car\u00e1cter nueva l\u00ednea y finalmente la etiqueta &lt;\/<em>vector<\/em>&gt;.Si a&nbsp;<em>vector<\/em>.long_usada se asigna un valor incluir\u00e1 en la cadena los elementos de&nbsp;<em>vector <\/em>cuyo \u00edndice&nbsp;es inferior a ese valor con tope el tama\u00f1o del vector. Si no se especifica utilizar\u00e1 todo los elementos.<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>_VectorToStr_(&#8216;<em>vector&#8217;<\/em>)<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Un ejemplo de esta funci\u00f3n puede observarse en la siguiente escena<\/p>\n<p style=\"text-align: center;\">\n<!-- iframe plugin v.4.5 wordpress.org\/plugins\/iframe\/ -->\n<iframe src=\"https:\/\/descartesjs.org\/repositorio\/VectorToStr\/index.html\" width=\"320\" height=\"370\" scrolling=\"yes\" class=\"iframe-class\" frameborder=\"0\"><\/iframe>\n<\/p>\n<p style=\"text-align: center;\">(puede descargarla <a href=\"https:\/\/descartesjs.org\/repositorio\/VectorToStr.zip\">desde aqu\u00ed<\/a>)<\/p>\n<p>De manera an\u00e1loga a la anterior se dispone de una funci\u00f3n que permite generar una cadena a partir de los elementos de una matriz<\/p>\n<table class=\"aligncenter\" style=\"height: 330px;\" border=\"1\" width=\"565\">\n<tbody>\n<tr valign=\"middle\">\n<td style=\"width: 50px; text-align: center;\"><span style=\"color: #73a53e;\"><strong>En espa\u00f1ol<\/strong><\/span><\/td>\n<td style=\"width: 350px;\">&nbsp;<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>En ingl\u00e9s<\/strong><\/td>\n<\/tr>\n<tr valign=\"middle\">\n<td style=\"width: 50px;\">&nbsp;<\/td>\n<td style=\"width: 350px;\">Genera una cadena de caracteres formada al concatenar la etiqueta &lt;<em>matriz<\/em>&gt; con lo valores de los elementos de esa matriz escritos cada columna en una l\u00ednea&nbsp;del fichero separados por el car\u00e1cter | y \u00e9stas separadas por el caracter nueva l\u00ednea y finalmente la etiqueta &lt;\/<i>matriz<\/i>&gt;. Las variables&nbsp;<em>matriz<\/em>.filas_usadas y <em>matriz<\/em>.columnas_usadas &nbsp;establecen el rango de los elementos a guardar.<\/td>\n<td style=\"width: 350px; text-align: center;\"><strong>_MatrixToStr_(&#8216;<em>matriz&#8217;<\/em>)<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Un ejemplo de esta funci\u00f3n puede consultarse en el art\u00edculo <a href=\"https:\/\/descartesjs.org\/documentacion\/?p=2488\">Guardar ficheros<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Las funciones para gesti\u00f3n de cadenas de texto (strings) que reconoce el analizador de expresiones de Descartes son las siguientes: En espa\u00f1ol &nbsp; En ingl\u00e9s _longitud_(str)&nbsp; Devuelve el n\u00famero de car\u00e1cteres que tiene la cadena str _length_(str) _subcadena_(str,i,f) Devuelve la cadena formada por los car\u00e1cteres desde el i (inclu\u00eddo) hasta el f (exclu\u00eddo).&nbsp;Por ejemplo,&nbsp;cuando str=&#8217;espuela&#8217;,&nbsp;para obtener &#8216;pue&#8217; habr\u00eda que llamar _subcadena_(str,2,5) y&nbsp;&#8216;puela&#8217; habr\u00eda que llamar&nbsp;_subcadena_(str,2,_longitud_(str)) _substring_(str,i,f) _letraEn_(str,n) Devuelve la letra que se encuentra en la posici\u00f3n n de la cadena,&nbsp;por ejemplo _letraEn_(&#8216;espuela&#8217;,3) devolver\u00eda &#8216;u&#8217; _charAt_(str,n) _\u00edndiceDe_(str,substr) Devuelve la primera posici\u00f3n en la cadena en la que se encuentra la subcadena<\/p>\n<a class=\"more-link\" rel=\"nofollow\" href=\"https:\/\/reddescartes.org\/documentacion\/funciones-para-gestion-de-cadenas\/\">[Leer m\u00e1s...]<\/a>","protected":false},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[28,27],"tags":[],"_links":{"self":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts\/2162"}],"collection":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/comments?post=2162"}],"version-history":[{"count":23,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts\/2162\/revisions"}],"predecessor-version":[{"id":3292,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/posts\/2162\/revisions\/3292"}],"wp:attachment":[{"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/media?parent=2162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/categories?post=2162"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/reddescartes.org\/documentacion\/wp-json\/wp\/v2\/tags?post=2162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}