Модераторы: diadiavova
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как убрать нули? Есть ли функция, которая уберет нули 
:(
    Опции темы
Mozirina
  Дата 24.1.2012, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 24.10.2011

Репутация: нет
Всего: нет



Привет всем!

Прошу помощи в следующем вопросе.

есть исходные данные к примеру: 

Код

<Документ>
    <Номер>00024</Номер>
    <Номер2>00105</Номер2>
    <Номер3>02501</Номер3>
    <Номер4>05050</Номер4>
</Документ>


Необходимо привести их к виду:

Код

<Документ>
    <Номер>24.000</Номер>
    <Номер2>105.000</Номер2>
    <Номер3>2501.000</Номер3>
    <Номер4>5050.000</Номер4>
</Документ>


То есть убрать лишь нули впереди значений. smile  

Буду ждать ваши варианты решения, заранее спасибо отозвавшимся  smile 


M
diadiavova
Не забываем пользоваться разметкой кода.


Это сообщение отредактировал(а) diadiavova - 25.1.2012, 00:21
PM MAIL   Вверх
diadiavova
Дата 25.1.2012, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 22
Всего: 142



Ну если прямо вот так вот в лоб решать, то преобразовать в число, потом в строку и добавить точку с тремя нулями
Код

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="@* | node()">
        <xsl:copy>
            <xsl:apply-templates select="@* | node()"/>
        </xsl:copy>
    </xsl:template>

  <xsl:template match="text()[string(number(.)) != 'NaN']">
    <xsl:value-of select="concat(number(.), '.000')"/>    
  </xsl:template>
  
</xsl:stylesheet>




--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
krypt3r
Дата 25.1.2012, 08:57 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 359
Регистрация: 9.6.2009

Репутация: нет
Всего: 16



Или заюзать format-number()
Код

<xsl:value-of select="format-number(., '#.000')"/>

PM MAIL   Вверх
diadiavova
Дата 25.1.2012, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 22
Всего: 142



Цитата(krypt3r @  25.1.2012,  09:57 Найти цитируемый пост)
Или заюзать format-number()

Да, так лучше smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "XML/XSLT"
diadiavova

Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась.

Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение.

Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел

Желаем удачи в Вашем деле!


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | XML, XSL | Следующая тема »


 




[ Время генерации скрипта: 0.0644 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.