Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.25;
Скачать: CL | DM;

Вниз

Неразрывный пробел и замена в тексте!   Найти похожие ветки 

 
mufan   (2007-11-02 19:21) [0]

Братцы! Всем доброго времени суток! Нужна ваша помощь!

1. есть некоторый текст (с переносами, абзацами и пр., т.е. не однострочный)
2. для текста абсолютно не важен стиль (жирный, курсив, размер... - это все не надо)
3. в тексте надо в определенных местах заменить что-то на такой символ как "неразрывный пробел"

вопросы:

какой код у символа неразрывного пробела в делфи??? что такое неразрывный пробел я думаю понятно =)
В MS Word (при вкл. режиме скрытых символов он показывается градусом), в OpenOffice - точкой (как простой пробел) с затемненным фоном!

как вообще это лучше реализовать не посоветуете? RichEdit или просто Memo??? Не напомните как там заменить строку1 на строку2??? =)

а то я уже давно str_replace использую...

спасибо!


 
TUser ©   (2007-11-02 20:07) [1]

Нет такого символа в Delphi и в стандартных кодировках. Можно Мемо, и отслеживать переносы.


 
TStas ©   (2007-11-02 20:47) [2]

Это вообще не символ - это указание браузеру, что пробел в этом месте должен быть обязательно, просто пробелы браузер по вкусу личному игнорирует лишние. А так код у него 32, конечно. Это обычный пробел. То что в ворде он градусом обозначается, при попытке скопировать в Edit, а потом в Ворд становится обычным пробелом.


 
Anatoly Podgoretsky ©   (2007-11-02 21:14) [3]

> TStas  (02.11.2007 20:47:02)  [2]

160


 
mufan   (2007-11-03 12:18) [4]

Так...
Ну тогда ситуация такая:

1. берем текст из любого источника
2. вставляем в RICHEDIT
3. жмем кнопку - выполняется скрипт по замене в опр. местах пробелов некоторой ключевой последовательностью...
4. копируем этот текст
5. вставляем в ворд и опенофис и там делаем всего одну глобальную замену, нашей ключевой последовательности на неразрывный пробел...

других вариантов теперь я не вижу =) а вы??? -)))


 
Юрий Зотов ©   (2007-11-03 23:12) [5]

> mufan   (03.11.07 12:18) [4]

Как уже было сказано, символ "неразрывный пробел" существует только во всяких там "оффисах". Да и то не во всех и лишь в силу их собственной интерпретации, не более.

В природе же символ "неразрывный пробел" в диком виде не встречается. Но, как Вы совешенноо правильно подметили, ничто не мешает программе  его определить (конечно, в ее собственной интерпретации и не более).

Поэтому Ваше решение, в принципе, верно, но его можно упростить:

1. Берем текст из любого источника.
2. Вставляем его в WORD.
3. Не жмем никакую кнопку, а сразу заставляем Word выполнить "скрипт по замене в опр. местах пробелов некоторой ключевой последовательностью".

Причем даже и скрипт не нужен. Word.Application со всем этим успешно справится, поскольку Word - это COM-сервер.


 
guav ©   (2007-11-03 23:15) [6]

А разве #160 не оно ?


 
Юрий Зотов ©   (2007-11-03 23:28) [7]

> guav ©   (03.11.07 23:15) [6]

#160 - это всего лишь символ, и не более. Его интерпретация зависит от программы. Word интерпретирует его, как неразрывный (при показе и печати) пробел. Но Вы и сами легко напишете такую программу, которая читает файл и в местах появления символа #160 вставляет фото любимой девушки. Не вопрос.


 
guav ©   (2007-11-03 23:44) [8]

Это (про девушку) понятно, и касается любого символа.
Стандарные контролы TMemo и TRichEdit тоже интерпретируют #160 как неразрывный пробел, как и функция DrawText, так что незачем изобретать велосипед.


 
Anatoly Podgoretsky ©   (2007-11-03 23:51) [9]

> Юрий Зотов  (03.11.2007 23:28:07)  [7]

HTML страницы, 160 определяется как неразрывный пробел.


 
Юрий Зотов ©   (2007-11-04 00:21) [10]

> guav ©   (03.11.07 23:44) [8]

> касается любого символа.

Я рад, что мы друг друга поняли. И, конечно же, мы оба прекрасно понимаем, что вместо фото можно вставить и #160. А можно вставить этот символ и сразу в текст. Не вопрос.

> Anatoly Podgoretsky ©   (03.11.07 23:51) [9]

Спасибо за информацию.

========================

:o)


 
TStas ©   (2007-11-04 08:49) [11]

А без ворда нельзя? Есть же TRichEdit. Вот из него и читать коды?
Просто я ведь не совсем уж сдуру вякнул про 32. Я же проверил, но на Tedit"е. А он, гад, взял, и мой неразрывный разрывным заменил :(


 
Anatoly Podgoretsky ©   (2007-11-04 12:27) [12]

> Юрий Зотов  (04.11.2007 00:21:10)  [10]

Я намекаю на то, что данный символ определен именно в качестве неразрывного пробела, но любое приложение может на это плевать. Я даже видел (давно) шрифты или приложения, где этот символ отображался не пробелом.
Но если выбирать кандидата на эту роль, то это самое то.



Страницы: 1 вся ветка

Текущий архив: 2007.11.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.019 c
15-1192999930
SerJaNT
2007-10-22 00:52
2007.11.25
ACDSee 3.0


15-1193144154
Dennis I. Komarov
2007-10-23 16:55
2007.11.25
Интересно, сколько сейчас выживших (зарегистрированных) после


5-1163266828
Vasiliy
2006-11-11 20:40
2007.11.25
Как отработать DragAndDrop в DesignTime?


2-1193984840
dumka
2007-11-02 09:27
2007.11.25
Шрифты


2-1193726020
IntruderLab
2007-10-30 09:33
2007.11.25
FastReport 3.0 переменные